wordpress新手建站,58找工作招聘信息,wordpress level,网站建设的文章DQL查询包括以下这些内容#xff1a;
• 基础查询
• 条件查询(WHERE)
• 分组查询(GROUP BY)
• 排序查询(ORDER BY)
• 分页查询(LIMIT)(一)、基础查询
1、查询多个字段 SELECT 字段列表 FROM 表名; SELECT * FROM 表名;
当前表中数据如下#xff1a;
2、去除重复记录 …DQL查询包括以下这些内容
• 基础查询
• 条件查询(WHERE)
• 分组查询(GROUP BY)
• 排序查询(ORDER BY)
• 分页查询(LIMIT)(一)、基础查询
1、查询多个字段 SELECT 字段列表 FROM 表名; SELECT * FROM 表名;
当前表中数据如下
2、去除重复记录 SELECT DISTINCT 字段列表 FROM 表名;
直接查询表中address结果如下可以看出有重复的地址信息出现
去除重复记录
3、起别名 AS: AS也可以省略
二条件查询
1、条件查询语法 SELECT 字段列表 FROM 表名 WHERE 条件列表;
2、条件
查询年龄大于30的SELECT id,name,age,sex,address,math, english,hire_date from stu WHERE age30;-- 查询年龄大于等于30岁的信息SELECT id,name,age,sex,address,math, english,hire_date from stu WHERE age30;-- 查询年龄大于等于30岁并且年龄小于等于50的信息SELECT id,name,age,sex,address,math, english,hire_date from stu WHERE age30 AND age50;-- 查询年龄不等于30的SELECT id,name,age,sex,address,math, english,hire_date from stu WHERE age!30;-- 查询英语为null的
-- 注意null值的比较不能使用 !需要使用 is is not
SELECT id,name,age,sex,address,math, english,hire_date from stu WHERE english is null;LIKE 占位符:(1) _:代表单个任意字符(2)%:代表任意个数字符-- 查询姓‘马’的
SELECT id,name,age,sex,address,math,english,hire_date FROM stu WHERE name like 马%;-- 查询第二个字是‘花’的
SELECT id,name,age,sex,address,math,english,hire_date FROM stu WHERE name like _花%;-- 查询名字中有‘运’的
SELECT id,name,age,sex,address,math,english,hire_date FROM stu WHERE name like %运%;三排序查询
1、排序查询语法SELECT 字段列表 FROM 表名 ORDER BY 排序字段名1 [排序方式1],排序字段名2 [排序方式2]…;排序方式ASC升序排列默认DESC降序排列注意 如果有多个排序条件当前边的条件值一样时才会根据第二条进行排序-- 查询年龄按照升序
SELECT id,name,age,sex,address,math,english,hire_date FROM stu ORDER BY age ASC;-- 查询按照数学成绩降序排列
SELECT id,name,age,sex,address,math,english,hire_date FROM stu ORDER BY math DESC;-- 查询按数学成绩降序排列如果数学成绩一样再按照英语升序排列
SELECT id,name,age,sex,address,math,english,hire_date FROM stu ORDER BY math DESC,english ASC;四聚合函数
1、聚合函数的概念将一列数据作为一个整体进行纵向计算。2、聚合函数的分类3、聚合函数的语法SELECT 聚合函数名(列名) FROM 表;注意null值不参与所有聚合函数运算。-- 统计指定列的数量
SELECT count(name) FROM stu;english列中有一个数据为null所以统计数量为9因此统计数据时要选用不为null的列。推荐直接在括号内写*-- 查询数学成绩最高的
SELECT max(math) FROM stu;-- 查询数学成绩最低的
SELECT min(math) FEOM stu;-- 求数学成绩总和
SELECT sum(math) FEOM stu;-- 数学成绩平均值
SELECT avg(math) FEOM stu;五分组查询
1、分组查询语句
SELECT 字段列表 FROM 表名 [WHERE 分组前条件限定] GROUP BY 分组字段名 [HAVING 分组后条件过滤];
注意分组之后查询的字段为聚合函数和分组字段查询其他字段无任何意义。where和having的区别1执行的时机不一样where是分组之前进行限定不满足where条件则不参与分组而having是分组之后对结果进行过滤2可判断的条件不一样where不能对聚合函数进行判断having可以。执行顺序where聚合函数having查询男女生各自的数学平均分
SELECT avg(math) FROM stu GROUP BY sex;查询男女生各自数学平均分以及各自人数
SELECT avg(math),count(*) FROM stu GROUP BY sex;查询男女生各自数学平均分以及各自人数要求分数低于70不参与分组
SELECT avg(math),count(*) FROM stu WHERE math70 GROUP BY sex;查询男女生各自数学平均分以及各自人数要求分数低于70不参与分组分组之后人数大于两个的。
SELECT avg(math),count(*) FROM stu WHERE math70 GROUP BY sex HAVING count(*)2;六分页查询
1、分页查询语法SELECT 字段列表 FROM 表名 LIMIT 起始索引,查询条目数;起始索引从0开始计算公式起始索引(当前页码-1) * 每页显示的条数提示1分页查询limit是MySQL数据库的方言2Oracle分页查询使用rownumber3SQL server分页查询使用top从0开始查询3条数据
SELECT id,name,age,sex,address,math,english,hire_date FROM stu LIMIT 0,3;每页显示三条数据查询第一页数据
SELECT id,name,age,sex,address,math,english,hire_date FROM stu LIMIT 0,3;每页显示三条数据查询第二页数据
SELECT id,name,age,sex,address,math,english,hire_date FROM stu LIMIT 3,3;每页显示三条数据查询第三页数据
SELECT id,name,age,sex,address,math,english,hire_date FROM stu LIMIT 6,3;