查询语句select

一、基础扩展(最常用)

1. 给字段起别名(AS)

复制代码
SELECT name AS 姓名, workno AS 工号, age AS 年龄 FROM emp;

AS 可以省略

复制代码
SELECT name 姓名, workno 工号, age 年龄 FROM emp;

2. 查询所有字段

复制代码
SELECT * FROM emp;

3. 查询并去重Distinct

复制代码
SELECT DISTINCT age FROM emp;

二、条件查询 WHERE(必学)

1. 精确查询 =

复制代码
SELECT name,workno,age FROM emp WHERE name = '赵敏';

2. 大于 > / 小于 <

复制代码
SELECT name,age FROM emp WHERE age > 20;

3. 不等于!= 或 <>

复制代码
SELECT * FROM emp WHERE age != 18;

4. 并且 AND

复制代码
SELECT * FROM emp WHERE gender='女' AND age>20;

5. 或者 OR

复制代码
SELECT * FROM emp WHERE age<20 OR age>40;

6. 在区间 BETWEEN ... AND ...

复制代码
SELECT * FROM emp WHERE age BETWEEN 20 AND 30;

between 左边的数值要小于右边的数值。

7. 在多个值内 IN

复制代码
SELECT * FROM emp WHERE age IN(18,20,25);

三、模糊查询 LIKE(超级常用)

1. 以 XX 开头

sql

复制代码
SELECT * FROM emp WHERE name LIKE '张%';

2. 以 XX 结尾

sql

复制代码
SELECT * FROM emp WHERE name LIKE '%敏';

3. 包含 XX

sql

复制代码
SELECT * FROM emp WHERE name LIKE '%龙%';

4. 不包含 XX

sql

复制代码
SELECT * FROM emp WHERE name NOT LIKE '%王%';

'%'表示多个占位符,'_'表示单个占位符

四、排序 ORDER BY

1. 升序 ASC(从小到大)

sql

复制代码
SELECT name,age FROM emp ORDER BY age ASC;

2. 降序 DESC(从大到小)

sql

复制代码
SELECT name,age FROM emp ORDER BY age DESC;

3. 多字段排序

sql

复制代码
SELECT * FROM emp ORDER BY age DESC, name ASC;

五、分页 LIMIT

1. 前 5 条

sql

复制代码
SELECT * FROM emp LIMIT 5;

2. 从第 3 条开始,查 4 条

sql

复制代码
SELECT * FROM emp LIMIT 2,4;

六、聚合函数(统计)

一列数据作为一个整体 ,进行纵向计算。作用于某一列的。

sql

复制代码
SELECT COUNT(*) FROM emp;          -- 总人数
SELECT MAX(age) FROM emp;          -- 最大年龄
SELECT MIN(age) FROM emp;          -- 最小年龄
SELECT AVG(age) FROM emp;          -- 平均年龄
SELECT SUM(age) FROM emp;          -- 年龄总和
所有的null不参与聚合函数的计算中

七、分组查询 GROUP BY

sql

复制代码
SELECT gender, COUNT(*) FROM emp GROUP BY gender;

八、综合万能写法(你背这个就够)

sql

复制代码
SELECT 字段
FROM 表
WHERE 条件
GROUP BY 分组
HAVING 分组后条件
ORDER BY 排序
LIMIT 分页;

九、给你几个超级常用组合示例

1. 查询姓张、年龄 > 20、按年龄降序

sql

复制代码
SELECT name,age FROM emp 
WHERE name LIKE '张%' AND age>20 
ORDER BY age DESC;

2. 查询女性、20~30 岁、前 5 条

sql

复制代码
SELECT * FROM emp 
WHERE gender='女' AND age BETWEEN 20 AND 30 
LIMIT 5;

总结

你原来的语句:

sql

复制代码
select name , workno, age from emp;

所有扩展方向:

  • 别名 AS
  • 条件 WHERE
  • 模糊查询 LIKE %
  • 排序 ORDER BY
  • 分页 LIMIT
  • 统计 COUNT/SUM/AVG
  • 分组 GROUP BY
相关推荐
王琦03184 小时前
生产环境中使用通用二进制包安装
mysql
笃行3505 小时前
国产化落地避坑 · 干货向|Oracle 迁金仓 KES,我把外连接消除排在隐性陷阱第一位
数据库
老纪的技术唠嗑局5 小时前
花一年时间整理出的:AI 数据库混合搜索入门实践
数据库
Irene19916 小时前
大数据开发的常见实践:把 SQL 直接写在 Shell 脚本里 ER图 数据血缘
sql·数据血缘·er
川石课堂软件测试6 小时前
安全测试|常见SQL注入攻击方式、实例及预防
服务器·数据库·sql·功能测试·测试工具·安全·单元测试
笃行3506 小时前
国产化落地避坑 · 干货向|迁移后那条「测试能过、一上生产就查空」的 SQL,多半栽在 WHERE 函数顺序上
数据库
蓝田~7 小时前
MySQL慢查询怎么优化?B+Tree索引原理+MVCC读不阻塞写+EXPLAIN执行计划,从5秒到0.05秒
数据库·mysql
Herbert_hwt7 小时前
MySQL学习前言:关于MySQL的历史与当下学习的必要性
mysql
sunxunyong7 小时前
doris用户资源组配置
数据库
Cloud云卷云舒7 小时前
云卷云舒:HaishanDB的AI原生能力主要应用场景
数据库·人工智能·ai-native·haishandb·移动云长期记忆