普歌-泽辰团队:数据库:图形化工具中DQL概念,数据查询语言大全,语法,基础查询,条件查询,排序,分组,分页查询,关键字:select, where



一、SQL语言DQL知悉

(一)概念理解

DQL:查询表中的记录 : select * from 表名;
数据查询语言DQL基本结构是由SELECT子句,FROM子句,WHERE 子句组成的查询块:
SELECT ----------- <字段名表>
FROM---------------<表或视图名>
WHERE------------ <查询条件>

(二)查询语法

select 字段列表
from 表名列表
where 条件列表
group by 分组字段
having 分组之后的条件
order by 排序
limit 分页限定

二、查询分类

(一)基础查询

  1. 多个字段的查询(字段:年龄,姓名)
    select 字段名1,字段名2… from 表名;
    * 注意:
    * 如果查询所有字段,则可以使用*来替代字段列表。
select  age  name  from  stu;

select  *  from  stu;
  1. 去除重复: * distinct
select  distinct  age  name  from  stu;
  1. 计算列 * ifnull(表达式1,表达式2):null参与的运算,计算结果都为null
    计算数学和英语课程的总分,(当有一门为null值时,防止结果为null)
select  name,math + ifnull(english ,0)   from   stu; 
  1. 起别名: * as:as也可以省略 ,在l两门成绩前面加上 As 总分
select  name,math + ifnull(english ,0)As)  总分  from  stu;

(二)条件查询

1 查询 ID 不等于20的信息 ---- 标识符: <>

 SELECT  *  FROM  stu  WHERE  count  <>  20;`

2 查询 ID 大于等于20 小于等于30的信息
---- 1 AND连接;
---- 2 用 BETWEEN 和 AND 隔开

 SELECT  *  FROM  stu  WHERE  count  >= 20 AND  age  <=30;
 SELECT  *  FROM  stu  WHERE  count  BETWEEN  20  AND  30;

3 查询 ID 为22,18,25 的信息 ---- 标识符:IN

 SELECT  *  FROM  stu  WHERE   count  IN (22,18,25);

4 查询英语成绩为是否为 null 值
– 查询英语成绩不为null

 SELECT  *  FROM  stu  WHERE  english  IS  NULL;			
 SELECT  *  FROM  stu  WHERE  english   IS  NOT  NULL;

5 例:查询姓 王 的人的信息 ------------------LIKE ‘王%’
—例:查询名字中带有 泽 子人的信息 ---- LIKE ‘%泽%’

SELECT  *  FROM  stu  WHERE  NAME  LIKE  '王%';
SELECT  *  FROM  stu  WHERE  NAME  LIKE  '%泽%';

(三)排序查询

语法:order by 子句
* order by 排序字段1 排序方式1 , 排序字段2 排序方式2…
* ASC: 升序,也是默认的。
* DESC: 降序。

select  *  from  stu  order  by  math  ASC; 
select  *  from  stu  order  by  math  DESC;

(四)分组查询

where 和 having 的区别?

  1. where 在分组之前进行限定,如果不满足条件,则不参与分组。having在分组之后进行限 定,如果不满足结果,则不会被查询出来
  2. where 后不可以跟聚合函数,having可以进行聚合函数的判断。
SELECT  sex ,  AVG(math)  FROM  stu  GROUP  BY  sex; 
/*按照性别分组。分别查询男、女同学的平均分*/
SELECT  sex  ,  AVG(math),COUNT(id)  FROM  stu  WHERE  math  >  70  GROUP  BY  sex;
/* 按照性别分组。分别查询男、女同学的平均分,人数 要求:分数低于70分的人,不参与分组*/

(五)分页查询

  1. 语法:limit 开始的索引,每页查询的条数;
  2. 公式:开始的索引 = (当前的页码 - 1)* 每页显示的条数
    (1) – 每页显示5条记录
SELECT * FROM student LIMIT 0,5; -- 第1页
			
SELECT * FROM student LIMIT 5,5; -- 第2页
			
SELECT * FROM student LIMIT 10,5; -- 第3页

**@喜欢的点赞关注,评论区留下宝贵的意见呐❥❥~**
  • 不足之处,欢迎雅正留言

猜你喜欢

转载自blog.csdn.net/weixin_53295050/article/details/113791058