1.格式
SELECT activity_id FROM jsnh_activity
activity_id的别名设为id
SELECT activity_id id FROM jsnh_activity
SELECT activity_id AS id FROM jsnh_activity
3.字符串
SELECT 'aa' as param1,activity_id + '-3' as id FROM jsnh_activity
4.显示表结构
DESCRIBE jsnh_activity
5.过滤和排序
SELECT * FROM jsnh_activity WHERE activity_id > 3 ORDER BY activity_id DESC
5.1WHERE
1)比较运算
2)逻辑运算
3)like通配符补充说明
(1)MySQL中的常用统配符有三个
%:用来表示任意多个字符,包含0个字符
_ : 用来表示任意单个字符
escape:用来转义特定字符
在MySQL中统配符一般和模糊查询 like 关键字结合使用
(2)%的使用方式
select * from user where username like '%P%';
查询包含P的字符串
(3)"_"的使用方式
select * from user where username like 'P_boy';
查询长度为5,以p开头,以boy结尾的字符串
(4)escape的使用方式及注意事项
escape的作用是用来转义,比方说我们有需求查询某些特殊字符的时候,就需要使用它:比如要查字符%或者_,那么我们就需要用到转义
select username from user where username like '%pbo/_%' escape '/';
查询包含pbo_的字符串。这里定义/为转译符,所以/_实际表示的是_
4)in和exists
https://blog.csdn.net/Cool_Wayen/article/details/79614806
6.分组
6.1分组函数
SELECT AVG(activity_id), COUNT(activity_id),MAX(activity_id),MIN(activity_id),SUM(activity_id) FROM jsnh_activity
6.2GROUP BY
SELECT activity_code,AVG(activity_id), COUNT(activity_id),MAX(activity_id),MIN(activity_id),SUM(activity_id) FROM jsnh_activity GROUP BY activity_code
按照activity_code和activity_id两个字段分组,相当于按照两个字段的内容拼接在一起的值进行分组
SELECT activity_code,AVG(activity_id), COUNT(activity_id),MAX(activity_id),MIN(activity_id),SUM(activity_id) FROM jsnh_activity GROUP BY activity_code,activity_id
注意:group子句后不能有where
6.3条件过滤having
在分组后,对分组后的结果进行条件过滤
查询出activity_id 大于2的结果,再对结果按照activity_code进行分组,再获取每个分组的activity_id的平均值,最大值等,再过滤出activity_id平均值大于5的结果
SELECT activity_code,AVG(activity_id), COUNT(activity_id),MAX(activity_id),MIN(activity_id),SUM(activity_id)
FROM jsnh_activity WHERE activity_id > 2 GROUP BY activity_code HAVING AVG(activity_id) > 5
7、distinct 去重
SELECT activity_code FROM jsnh_activity
对查询到的结果进行去重,去掉完全重复的结果
SELECT DISTINCT * FROM jsnh_activity
对查询结果,按列activity_code去重,去掉activity_code重复的结果
SELECT DISTINCT(activity_code),activity_id FROM jsnh_activity
8.LIMIT
截取部分结果集
对查询到的结果只返回前10个,第一个数字标识从几个开始截取,第二个数字表示截取多少个
SELECT * FROM jsnh_activity LIMIT 0,10
9.多表联查
9.1分类

9.3特殊的自连接
cap_menu表,主键MENU_ID,父节点主键PARENT_MENU_ID,查询出有父节点的数据,查询出id、name、父id、父name
SELECT m.MENU_ID 子id,m.MENU_NAME 子name,n.MENU_ID 父id,n.MENU_NAME 父name
FROM cap_menu m,cap_menu n
WHERE m.PARENT_MENU_ID = n.MENU_ID
10.子查询
https://www.jianshu.com/p/620eef505bd8
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· DeepSeek 开源周回顾「GitHub 热点速览」
· 物流快递公司核心技术能力-地址解析分单基础技术分享
· .NET 10首个预览版发布:重大改进与新特性概览!
· AI与.NET技术实操系列(二):开始使用ML.NET
· 单线程的Redis速度为什么快?