Mysql DQL 数据查询语言

查询

select columnName1,.... from ;
select * from ;

where子句

条件

= -- 等于
!=,<> -- 不等于
> -- 大于
< -- 小于
>= ,<= -- 大于等于,小于等于
between and -- 区间查询

多条件

where and/or/not

like子句

image

对查询结果的处理

计算列

select stu_name,2021-stu_age from; -- 用2021减去年龄,用stu_age列名显示

字段别名

select columnName as a from ; -- 把columnName 按a显示

消除重复行

select distinct columnName from ;

排序order by

select * from where columnName>5 order by columnName;
desc -- 降序
asc -- 升序
select * from where columnName1 >5 order by age dese,gender asc; -- 将结果先按年龄降序排列,再按性别升序

聚合函数

count() -- 统计满足条件的指定字段值的个数
select count(stu_name) from where stu_age>5;
max() -- 查询满足调节列的最大值
select max(stu_age) from where stu_gender='女';
min() -- 最小值
select min(stu_age) from where stu_gender='女';
sum() -- 查询满足调节的记录中指定列值的总和
select sum(stu_age) from stus;
avg() -- 求平均值
select avg(stu_age) from stus where stu_gender='男'; -- 查询所有男的年龄平均值

日期函数

now() sysdate() -- 现在时间 系统时间
insert into stus(date) values(now()) ; -- date必须是日期类型(type=datetime)yyyy,MM,dd hh:mm:ss

字符串函数

concat(column1,column2,..) -- 通过SQL指令对字符串处理,拼接多列
image

upper(column) -- 将字段的值串变为大写
select upper(column) from ;
lower(column) -- 将字段的值变为小写
select lower(column) from ;
substring(column,start,len) -- 从指定列中截取部分显示 start从1开始
image

分组查询

select 分组字段/聚合函数 from 表名 [where 条件] group by 分组列名; -- select后使用*显示对查询的结果分析之后,显示每组第一条记录(这种显示通常是无意义的);select后通常显示分组字段和聚合函数(对分组后的数据进行统计、求和、平均值等)
image

image

分页查询

limit
select ... from... where ... limit param1,param2; -- limit 0,3 表示查询前三个数据limit3,3表示查询第四条数据到第六条
image

posted @ 2024-05-20 18:53  ht7714  阅读(31)  评论(0)    收藏  举报