查询语句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
相关推荐
dishugj3 小时前
HANA集群状态监控
数据库·系统架构
小蒜学长3 小时前
基于Java的公司采购系统的设计与实现(代码+数据库+LW)
java·数据库·spring boot·后端·公司采购系统
lee_tianbai4 小时前
Java SSM 电影票预定系统|完整前后端项目,开箱即用(源码分享)
java·开发语言·数据库
SM_YHJ4 小时前
RFID通道门禁与资产台账联动的自动登记技术实现方案
大数据·数据库·人工智能
PaperData4 小时前
2014-2024年省级居民消费结构升级
数据库
砚底藏山河4 小时前
python量化入门:多周期数据对齐统一时间轴
java·数据库·python·金融·maven
Java后端的Ai之路4 小时前
昇腾NPU显存管理避坑指南:从npu-smi输出精准识别空闲卡的底层逻辑与实战
服务器·网络·数据库·npu·大模型服务
禾小西4 小时前
05丨Redis 内存快照:宕机后,如何实现快速恢复?
数据库·redis·缓存
笃行3504 小时前
数据同步软件:KFS 在 KingbaseES 项目里到底解决了什么
数据库
毕业设计7035 小时前
(免费领源码)django空气净化器销售系统09218- java、PHP、python、C#、小程序、大数据、单片机、网络工程等)
python·scrapy·mysql·pycharm·django·flask·pandas