外贸网站推广多少费用,炒股软件排名,利用万网做网站,网络营销的主要策略SQL介绍-DQL查询数据 一.基础查询二.条件查询三.排序查询1.聚合函数2.分组查询 四.分页查询 DQL查询基础的语法结构如下#xff1a;
SELECT字段列表
FROM表名列表
WHERE条件列表
GROUP BY分组字段
HAVING分组后条件
ORDER BY排序字段
LIMIT分页限定一.基础查询
说明语法查询… SQL介绍-DQL查询数据 一.基础查询二.条件查询三.排序查询1.聚合函数2.分组查询 四.分页查询 DQL查询基础的语法结构如下
SELECT字段列表
FROM表名列表
WHERE条件列表
GROUP BY分组字段
HAVING分组后条件
ORDER BY排序字段
LIMIT分页限定一.基础查询
说明语法查询多个字段SELECT 字段列表 FROM 表名;SELECT * FROM 表名; -- 查询所有数据去除重复记录SELECT DISTINCT 字段列表 FROM 表名;起别名列名 AS 别名(AS也可以省略)
-- 先建立新的表
drop table if exists stu;
-- 创建stu表
CREATE TABLE stu (
id int,-- 编号
name varchar(20),-- 姓名
age int,-- 年龄
sex varchar(5),-- 性别
address varchar(100),-- 地址,
math double(5,2),-- 数学成绩,
english double(5,2),-- 英语成绩
hire_date date -- 入学时间
);-- 添加数据
INSERT INTO stu(id,NAME,age,sex,address,math,english,hire_date)
VALUES
(1,马运,55,男,杭州,66,78,1995-09-01),
(2,马花疼,45,女,深圳,98,87,1998-09-01),
(3,马斯克,55,男,香港,56,77,1999-09-02),
(4,柳白,20,女,湖南,76,65,1997-09-05),
(5,柳青,20,男,湖南,86,NULL,1998-09-01),
(6,刘德花,57,男,香港,99,99,1998-09-01),
(7,张学右,22,女,香港,99,99,1998-09-01),
(8,德玛西亚,18,男,南京,56,65,1994-09-02);
SELECT * FROM stu;-- 基础查询
-- 查询name age两列
SELECT name,age FROM stu;-- 查询所有列的数据,用*指代所有列的数据但是不推荐使用
SELECT * FROM stu;-- 查询地址信息,这时候查询出来的信息有重复记录
SELECT address FROM stu;-- 去除重复可以通过DISTINCT关键字
SELECT DISTINCT address FROM stu;-- 查询姓名数学成绩英语成绩并用别名代替原有列名
-- 可以通过AS关键字来起别名也可以省略
SELECT name AS 姓名,math 数学成绩,english 英语成绩 FROM stu;二.条件查询
条件查询的语法很简单但是要结合不同的条件表达式去使用 SELECT 字段列表 FROM 表名 WHERE 条件列表;
符号功能\, \大于, 小于\, \大于等于, 小于等于等于\\ 或 !不等于BETWEEN ... AND ...在某个范围内(都包含)IN(...)多选一LIKE 占位符模糊查询 _单个任意字符 %多个任意字符IS NULL是NULLIS NOT NULL不是NULLAND 或 并且OR 或||或者NOT 或 !非
解下来通过实际的需求来体验这些语句的作用
SELECT * FROM stu;
-- 查询年龄大于20岁的学院的信息
SELECT * FROM stu WHERE age 20;-- 查询年龄大于等于20的学员的信息
SELECT * FROM stu WHERE age 20;-- 查询年龄大于等于20岁但是小于等于30岁的学员信息
SELECT id,name 姓名,age 年龄 FROM stu WHERE age20 AND age30;
SELECT * FROM stu WHERE age BETWEEN 20 AND 30;-- 查询入学日期在1998-09-01到1999-09-01之间的学员信息
SELECT * FROM stu WHERE hire_date BETWEEN 1998-09-01 and 1999-09-01;-- 查询年龄等于18岁的信息
SELECT * FROM stu WHERE age18;-- 查询年龄不等于18的学员信息
SELECT * FROM stu WHERE age ! 18;
SELECT * FROM stu WHERE age 18;-- 查询年龄等于182022的信息
SELECT * FROM stu WHERE age18 OR age20 OR age22;
SELECT * FROM stu WHERE age IN(18,20,22);-- 查询英语成绩为NULL的信息(NULL值的比较不能使用或!)
SELECT * FROM stu WHERE english IS NULL;-- 查询英语成绩不为NULL的信息
SELECT * FROM stu WHERE english IS NOT NULL;模糊查询LIKE 占位符
-- 模糊查询LIKE
-- 通配符 _ 代表单个任意字符
-- 通配符 % 代表多个任意字符-- 查询姓马的学员信息
SELECT * FROM stu WHERE name LIKE 马%;-- 查询名字第二个字是花的学员信息
SELECT * FROM stu WHERE name LIKE _花%;-- 查询名字中包含 德 的学员信息
SELECT * FROM stu WHERE name LIKE %德%;三.排序查询
具体语法 SELECT 字段列表 FROM 表名 ORDER BY 排序字段1 [排序方式1],排序字段2 [排序方式2] ...;排序方式 ASC: 升序排列(默认值) DESC: 降序排列当有多个条件时,只有前边的条件一样的时候,才会根据后边的条件进行排序
-- 查询学员信息按年龄进行升序排列
SELECT * FROM stu ORDER BY age ASC;
SELECT * FROM stu ORDER BY age; -- ASC是默认的,不进行指定也可以打到效果-- 查询信息按照数学成绩降序排列
SELECT * FROM stu ORDER BY math DESC;-- 查询信息按数学成绩降序排列如果成绩一样按英语成绩升序排列
SELECT * FROM stu ORDER BY math DESC,english ASC;1.聚合函数
聚合函数是把一列作为一个整体,进行纵向计算的. SELECT 函数名(列名) FROM 表;
函数名作用count(列名)统计数量(一般选用不为NULL的列)max(列名)统计最大值min(列名)统计最小值sum(列名)求和avg(列名)求平均
-- 聚合函数
-- 查班上一共有多少个学生 COUNT(expr)统计的列名不能为NULL
/*count推荐的取值1.主键2.*新版MySQL中会计算效率最高的一列
*/
SELECT COUNT(id) FROM stu;
SELECT COUNT(name) FROM stu;
-- COUNT(expr)统计的列名不能为NULL空值是统计不到的会出错
SELECT COUNT(english) FROM stu;-- 查询数学成绩的最高分
SELECT MAX(math) FROM stu;
-- 查询数学成绩的最低分
SELECT MIN(math) FROM stu;
-- 查询数学成绩的平均分
SELECT AVG(math) FROM stu;-- 查询英语成绩的最低分 注意NULL值不参与聚合函数的运算
SELECT MIN(english) FROM stu;2.分组查询
基本语法 SELECT 字段列表 FROM 表名 [WHERE 分组前限定条件] GROUP BY 分组字段名 [HAVING 分组后条件过滤] 注意分组之后,查询的字段为聚合函数和分组字段,查询其他的字段无任何意义WHERE和HAVING的区别 – 执行时机不一样:WHERE是分组之前进行限定,不满足WHERE条件则不参与分组,HAVING是分组之后对结果进行过滤 – 可判断的条件不一样: WHERE不能对聚合函数进行判断, HAVING可以 – 执行顺序:WHERE 聚合函数 HAVING
-- 查询男同学和女同学各自的数学平均分
SELECT sex 性别,AVG(math) 平均分 FROM stu GROUP BY sex;-- 查询男女各自的平均分以及各自的人数
SELECT sex 性别,AVG(math) 平均分,COUNT(*) 人数 FROM stu GROUP BY sex;-- 查询男女各自的数学平均分,统计人数. 要求分数低于70分的人不参与分组
SELECT sex 性别,AVG(math) 数学均分,COUNT(*) 人数 FROM stu WHERE math70 GROUP BY sex;-- 查询男女各自的数学平均分,统计人数. 要求分数低于70分的人不参与分组,分组后人数大于2人的数据
SELECT sex 性别,AVG(math) 平均分,COUNT(*) 人数 FROM stu WHERE math70 GROUP BY sex HAVING COUNT(*)2;四.分页查询
语法 SELECT 字段列表 FROM 表名 LIMIT 起始索引 , 查询条目数;起始索引: 从零开始 计算公式:起始索引(当前页码-1) * 每页显示的条数分页查询是MySQL的方言 Oracle分页查询使用rownumber SQL Server分页查询使用top
-- 从0开始查询3条数据
SELECT * FROM stu LIMIT 0,3;-- 每页显示3条数据,查询第一页
SELECT * FROM stu LIMIT 0,3;-- 每页显示3条数据,查询第二页
SELECT * FROM stu LIMIT 3,3;-- 每页显示3条数据,查询第三页
SELECT * FROM stu LIMIT 6,6;B站视频课程 笔记与源码文件 文章转载自: http://www.morning.jhxtm.cn.gov.cn.jhxtm.cn http://www.morning.tqjks.cn.gov.cn.tqjks.cn http://www.morning.dlgjdg.cn.gov.cn.dlgjdg.cn http://www.morning.tqxtx.cn.gov.cn.tqxtx.cn http://www.morning.qytyt.cn.gov.cn.qytyt.cn http://www.morning.ydxx123.cn.gov.cn.ydxx123.cn http://www.morning.smmrm.cn.gov.cn.smmrm.cn http://www.morning.gmyhq.cn.gov.cn.gmyhq.cn http://www.morning.tmbfz.cn.gov.cn.tmbfz.cn http://www.morning.rwzkp.cn.gov.cn.rwzkp.cn http://www.morning.kqzt.cn.gov.cn.kqzt.cn http://www.morning.nydtt.cn.gov.cn.nydtt.cn http://www.morning.jbztm.cn.gov.cn.jbztm.cn http://www.morning.rcgzg.cn.gov.cn.rcgzg.cn http://www.morning.kzcfr.cn.gov.cn.kzcfr.cn http://www.morning.kqnwy.cn.gov.cn.kqnwy.cn http://www.morning.hrtct.cn.gov.cn.hrtct.cn http://www.morning.yrjfb.cn.gov.cn.yrjfb.cn http://www.morning.qzzmc.cn.gov.cn.qzzmc.cn http://www.morning.sqdjn.cn.gov.cn.sqdjn.cn http://www.morning.qnywy.cn.gov.cn.qnywy.cn http://www.morning.zmzdx.cn.gov.cn.zmzdx.cn http://www.morning.xsfny.cn.gov.cn.xsfny.cn http://www.morning.rnpt.cn.gov.cn.rnpt.cn http://www.morning.zrwlz.cn.gov.cn.zrwlz.cn http://www.morning.kwqcy.cn.gov.cn.kwqcy.cn http://www.morning.smnxr.cn.gov.cn.smnxr.cn http://www.morning.rlhh.cn.gov.cn.rlhh.cn http://www.morning.xgjhy.cn.gov.cn.xgjhy.cn http://www.morning.ctwwq.cn.gov.cn.ctwwq.cn http://www.morning.bwznl.cn.gov.cn.bwznl.cn http://www.morning.czlzn.cn.gov.cn.czlzn.cn http://www.morning.lcbnb.cn.gov.cn.lcbnb.cn http://www.morning.zcncb.cn.gov.cn.zcncb.cn http://www.morning.txlnd.cn.gov.cn.txlnd.cn http://www.morning.shangwenchao4.cn.gov.cn.shangwenchao4.cn http://www.morning.ljglc.cn.gov.cn.ljglc.cn http://www.morning.pkwwq.cn.gov.cn.pkwwq.cn http://www.morning.frpb.cn.gov.cn.frpb.cn http://www.morning.lnnc.cn.gov.cn.lnnc.cn http://www.morning.zrkws.cn.gov.cn.zrkws.cn http://www.morning.mczjq.cn.gov.cn.mczjq.cn http://www.morning.nyqm.cn.gov.cn.nyqm.cn http://www.morning.dbnpz.cn.gov.cn.dbnpz.cn http://www.morning.fqyxb.cn.gov.cn.fqyxb.cn http://www.morning.bpwz.cn.gov.cn.bpwz.cn http://www.morning.leeong.com.gov.cn.leeong.com http://www.morning.lxyyp.cn.gov.cn.lxyyp.cn http://www.morning.hpprx.cn.gov.cn.hpprx.cn http://www.morning.bhqlj.cn.gov.cn.bhqlj.cn http://www.morning.bfnbn.cn.gov.cn.bfnbn.cn http://www.morning.srbl.cn.gov.cn.srbl.cn http://www.morning.gpcy.cn.gov.cn.gpcy.cn http://www.morning.jhqcr.cn.gov.cn.jhqcr.cn http://www.morning.hlppp.cn.gov.cn.hlppp.cn http://www.morning.amonr.com.gov.cn.amonr.com http://www.morning.zlgth.cn.gov.cn.zlgth.cn http://www.morning.horihe.com.gov.cn.horihe.com http://www.morning.xldpm.cn.gov.cn.xldpm.cn http://www.morning.ltdxq.cn.gov.cn.ltdxq.cn http://www.morning.bynf.cn.gov.cn.bynf.cn http://www.morning.gnjtg.cn.gov.cn.gnjtg.cn http://www.morning.pljxz.cn.gov.cn.pljxz.cn http://www.morning.qpljg.cn.gov.cn.qpljg.cn http://www.morning.qfgxk.cn.gov.cn.qfgxk.cn http://www.morning.zsrdp.cn.gov.cn.zsrdp.cn http://www.morning.gfkb.cn.gov.cn.gfkb.cn http://www.morning.bpmtj.cn.gov.cn.bpmtj.cn http://www.morning.drzkk.cn.gov.cn.drzkk.cn http://www.morning.rsnd.cn.gov.cn.rsnd.cn http://www.morning.qkcyk.cn.gov.cn.qkcyk.cn http://www.morning.tdfyj.cn.gov.cn.tdfyj.cn http://www.morning.mzzqs.cn.gov.cn.mzzqs.cn http://www.morning.prgyd.cn.gov.cn.prgyd.cn http://www.morning.dkfrd.cn.gov.cn.dkfrd.cn http://www.morning.dodoking.cn.gov.cn.dodoking.cn http://www.morning.pqcbx.cn.gov.cn.pqcbx.cn http://www.morning.llsrg.cn.gov.cn.llsrg.cn http://www.morning.rttkl.cn.gov.cn.rttkl.cn http://www.morning.fnzbx.cn.gov.cn.fnzbx.cn