mysql常用语句五:DQL中的查询操作

1 查询时间间隔段内的记录

表结构如下
在这里插入图片描述
查询在2025年内投递简历的岗位数量,并且按数量降序排序。

select job, sum(num) as cnt from resume_info 
where date between "2025-01-01" and "2025-12-31"
group by job
order by cnt desc;

注意的是要使用sum函数,而不是count函数
date那一行还可以写作where date like "2025%"

在这里插入图片描述

2 多个条件中使用in关键词

表结构如下
在这里插入图片描述
查询在2025-10-15以后状态为购买成功C++课程或者Java课程或者Python的订单,并且按照order_info的id升序排序

select * from order_info
where date > "2025-10-15" and status="completed" 
and product_name in ("C++", "Java", "Python")
order by id;

在这里插入图片描述
多个或运算可以使用in关键词。

3 字符串相关操作

查找字符串'10,A,B' 中逗号','出现的次数cnt

select length('10,A,B')-length(replace('10,A,B',',','')) as cnt;

语句中用到了length()replace()函数。

4 按照字段的部分字符排序

表结构如下
在这里插入图片描述
查询按照first_name最后两个字母,升序进行排列

select first_name from employees
order by substr(first_name,-2,2);

语句中使用了substr函数,-2表示起始下标,2表示截取长度

在这里插入图片描述

5 concat连接多个字段

表结构如下


在这里插入图片描述

按照dept_no进行汇总,属于同一个部门的emp_no按照逗号进行连接,结果给出dept_no以及连接出的结果employees

select dept_no, group_concat(emp_no) as employees 
from dept_emp
group by dept_no;

在这里插入图片描述

猜你喜欢

转载自blog.csdn.net/Awt_FuDongLai/article/details/114598922