美文网首页
DQL数据查询语言

DQL数据查询语言

作者: 很很狠的狠角色 | 来源:发表于2017-10-20 21:23 被阅读0次
  • DQL:Data Query Language
  • 作用:查询结果,返回结果集。
  • 常用关键字: SELECT
  • 基本SELECT语句
SELECT [DISTINCT] *|{column1,column2,column3...} FROM table;
SELECT *|{column1,column2...|expression...} FROM table;

SELECT column1,column2,column3... FROM table ORDER BY column asc\desc;(升序\降序,默认升序)

实践操作

  • 查询表中所有学生的信息。
    SELECT * FROM student;
  • 查询表中所有学生的姓名和对应的英语成绩。
    SELECT name,english FROM student;
  • 过滤表中重复数据。
    SELECT DISTINCT english FROM student;(DISTINCT用于显示结果时,是否剔除重复数据)
  • 在所有学生数学分数上加10分特长分。
    SELECT name,math + 10 FROM student;
  • 统计每个学生的总分。
    SELECT name,(chinese + english + math) FROM student;
  • 使用别名表示学生分数。
    SELECT name AS 姓名,(chinese + english + math) 总分 FROM student;(AS可省略,别名)
  • 查询姓名为王五的学生成绩
    SELECT * FROM student WHERE name = '王五';
  • 查询英语成绩大于90分的同学
    SELECT * FROM student WHERE english > 90;
    -查询总分大于200分的所有同学
    SELECT * FROM student WHERE (chinese + english + math) > 200;
  • 查询英语分数在80-90之间的同学
    SELECT * FROM student WHERE english BETWEEN 80 AND 90;
  • 查询数学分数为89,90,91的同学
    SELECT * FROM student WHERE math IN(89,90,91);
  • 查询所有姓李的学生成绩
    SELECT * FROM student WHERE name LIKE '李%';
  • 查询数学分>80,语文分>80的同
    SELECT * FROM student WHERE chinese > 80 AND math > 80;
  • 对数学成绩排序后输出
    SELECT name,math FROM student ORDER BY math ASC;
  • 对总分排序后输出,然后再按从高到低的顺序输出
    SELECT *,(chinese + english + math) AS 总分 FROM student ORDER BY (chinese + english + math) DESC;
  • 对姓李的学生成绩排序输出
    SELECT * FROM student WHERE name LIKE '李%' ORDER BY (chinese + english + math);

多表查询(此部分属于更新内容,下面的数据库都是在此文集《数据完整性》章节里面建好的)

  1. 链接查询:(面试几率很大
    a、交叉连接:
    SELECT * FROM customers,orders;返回的是两张表的笛卡儿积。(隐式查询,不使用关键字)
    或者
    SELECT * FROM customers CROSS JOIN orders;
    b、内连接:
    SELECT * FROM customers AS c,orders o WHERE c.id = o.customer_id;
    或者
    SELECT * FROM customers AS c INNER JOIN orders o ON c.id = o.customer_id;
    c、外连接:
  • 查询所有的客户信息,同时把对应的订单查询出来。
    左外:返回符合链接条件的记录,同时返回左表中不满足链接条件的剩余记录
    SELECT * FROM customers AS c LEFT OUTER JOIN orders o ON c.id = o.customer_id;
    右外:SELECT * FROM customers AS c LEFT OUTER JOIN orders o ON c.id = o.customer_id;
  1. 几个简单的子查询
  • 嵌套查询:子查询的语句放到小括号内部。
    id = 1这个老师教过哪些学员(语句的查询形式:多条SQL语句)
    SELECT s_id FROM teacher_student WHERE t_id = 1;
    SELECT * FROM students WHERE id IN (1,2);
    子查询:
    SELECT * FROM students WHERE id IN (SELECT s_id FROM teacher_student WHERE t_id = 1);

相关文章

  • SQL基础概念

    SQL分类 DQL(数据查询语言):查询语句,凡是select都是DQL DML(数据操作语言):insert d...

  • sql语句的分类DQL、DML、DDL、DCL

    1. 数据查询语言DQL 数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE 子句组成的查询...

  • SQL语句

    SQL语句主要分为四类 DQL(数据查询语言): 查询语句,凡是select语句都是DQL。 DML(数据操作语言...

  • MySQL之DQL查询数据

    四、DQL查询数据 1.DQL(Data Query Language):数据查询语言 所有的查询操作都要用它 S...

  • SQL语句

    DQL(数据查询语言)selectDML(数据操作语言)insert、 update、 deleteDDL(数据定...

  • SQL语句基础

    SQL:结构化查询语言 SQL语言分类 DDL:数据定义语言。 DML:数据操作语言。 DQL:数据查询语言。 数...

  • MySQL常用命令

    DQL 数据查询语言 select DML 数据操作语言 insert delete upda...

  • 数据库查询语言

    SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML,数据定义语言DDL,数据控制语言DCL。 数据查询...

  • 06.DQL查询语句--列控制

    DQL(Data Query Language) 数据查询语言,用来查询记录(数据) 查询语句不会修改数据库 准备...

  • 数据库(九)-DQL数据查询语言

    DQL(Data Query Language):数据查询语言。 select语句的功能就是查询数据。select...

网友评论

      本文标题:DQL数据查询语言

      本文链接:https://www.haomeiwen.com/subject/hewvuxtx.html