news 2026/5/9 3:30:34

常用的sql语句汇总(个人版)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
常用的sql语句汇总(个人版)

1、sql按照指定数组顺序查询数据
2、数据库SQL 某字段按首字母排序

基础语句

1、SELECT:选择数据表中的数据

SELECT column_name1, column_name2 FROM table_name;

2、WHERE:筛选符合条件的数据

SELECT column_name FROM table_name WHERE column_name = 'value';

3、AND:用于连接 WHERE 子句中的多个条件

SELECT column_name FROM table_name WHERE column_name1 = 'value1' AND column_name2 = 'value2';

4、OR:用于连接 WHERE 子句中的多个条件,其中至少一个条件必须成立

SELECT column_name FROM table_name WHERE column_name1 = 'value1' OR column_name2 = 'value2';

5、IN:筛选符合指定值中任意一个的数据

SELECT column_name FROM table_name WHERE column_name IN ('value1', 'value2', 'value3');

6、NOT IN:筛选不符合指定值中任意一个的数据

SELECT column_name FROM table_name WHERE column_name NOT IN ('value1', 'value2', 'value3');

7、LIKE:筛选符合指定模式的数据

SELECT column_name FROM table_name WHERE column_name LIKE 'pattern'; SELECT column_name FROM table_name WHERE column_name LIKE '%value%'

8、NOT LIKE:筛选不符合指定模式的数据

SELECT column_name FROM table_name WHERE column_name NOT LIKE 'pattern'; SELECT column_name FROM table_name WHERE column_name NOT LIKE '%value%'

9、BETWEEN:筛选在指定范围内的数据

SELECT column_name FROM table_name WHERE column_name BETWEEN 'value1' AND 'value2';

9、NOT BETWEEN:筛选不在指定范围内的数据

SELECT column_name FROM table_name WHERE column_name NOT BETWEEN 'value1' AND 'value2';

10、ORDER BY:按指定列进行排序

SELECT column_name FROM table_name ORDER BY column_name ;//默认升序 SELECT column_name FROM table_name ORDER BY column_name DESC;//降序

11、GROUP BY:按指定列进行分组

SELECT column_name1,column_name2 FROM table_name GROUP BY column_name1;

备注:从 MySQL 5.7.5 开始,默认 SQL 模式包括 ONLY_FULL_GROUP_BY。 (在 5.7.5 之前,MySQL 不检测函数依赖,并且默认不启用 ONLY_FULL_GROUP_BY。),所以select的内容如果不在group by 中,将会报错,可以参考这里的解决方法

DISTINCT :基于指定列的唯一值去重

SELECT DISTINCT(column_name1) FROM table_name;

区别:distinct和group by具体区别点击查看

12、HAVING:筛选分组后符合指定条件的数据

SELECT column_name1, SUM(column_name2) FROM table_name GROUP BY column_name1 HAVING SUM(column_name2) > 100;
进阶一下

13、JOIN:连接多个数据表

SELECT table1.column_name1, table2.column_name2 FROM table1 JOIN table2 ON table1.column_name1 = table2.column_name1;

14、LEFT JOIN:连接左侧数据表,并包括右侧数据表中与左侧数据表中没有匹配项的行

SELECT table1.column_name1, table2.column_name2 FROM table1 LEFT JOIN table2 ON table1.column_name1 = table2.column_name1; //右连接 SELECT * FROM table1 RIGHT JOIN table2 ON table1.column_name = table2.column_name;

15、UNION:合并多个查询结果

SELECT column_name FROM table1 UNION SELECT column_name FROM table2;

16、EXISTS:检查子查询结果是否存在

SELECT column_name FROM table1 WHERE EXISTS (SELECT column_name FROM table2 WHERE column_name = 'value'); //NOT EXISTS:检查子查询结果是否不存在 SELECT column_name FROM table1 WHERE NOT EXISTS (SELECT column_name FROM table2 WHERE column_name = 'value');

17、AVG:计算平均值

SELECT AVG(column_name) FROM table_name;

18、COUNT:计算数据行数

SELECT COUNT(*) FROM table_name;

19、MAX:计算最大值

SELECT MAX(column_name) FROM table_name;

20、MIN:计算最小值

SELECT MIN(column_name) FROM table_name;

21、SUM:计算总和

SELECT SUM(column_name) FROM table_name;

22、CASE:根据条件返回不同的结果

SELECT column_name, CASE WHEN column_name = 'value1' THEN 'result1' WHEN column_name = 'value2' THEN 'result2' ELSE 'result3' END AS new_column_name FROM table_name;`

23、ROW_NUMBER:按照指定列进行分组并排序(就是对column_name字段进行分组,并在组内对column_name2字段降序排)

SELECT column_name, ROW_NUMBER() OVER (PARTITION BY column_name ORDER BY column_name2 DESC) FROM table_name;

示例如下:

24、DENSE_RANK:按照指定列进行分组并排序,相同值的行具有相同的排名,不跳过下一个排名(RANK:跳过下一个排名)

SELECT column_name, DENSE_RANK() OVER (PARTITION BY column_name ORDER BY column_name2 DESC) FROM table_name;

示例如下:

25、FIRST_VALUE:返回分组中第一个行的列值

SELECT column_name, FIRST_VALUE(column_name2) OVER (PARTITION BY column_name ORDER BY column_name2) FROM table_name; //返回分组中最后一个行的列值 SELECT column_name, LAST_VALUE(column_name2) OVER (PARTITION BY column_name ORDER BY column_name2 ROWS BETWEEN UNBOUNDED PRECEDING AND UNBOUNDED FOLLOWING) FROM table_name;

26、CONCAT:连接多个字符串值为一个字符串

SELECT CONCAT(column_name1, ' ', column_name2) FROM table_name;

示例如下:

附加使用的sql

1、连表更新,将一张表的某个字段更新为另一张表的某个字段值

#将1表的reward更新为b表的reward值 UPDATE project_submits a INNER JOIN projects b ON a.project_id = b.id SET a.reward = b.reward

2、DATE_FORMAT:查询指定日期的数据

select * from `order_exam_logs` where DATE_FORMAT(created_at, "%Y-%m-%d")='2023-06-05'

因为数据表中created_at存到了秒,所以要使用DATE_FORMAT函数

学习资源

如果你是也准备转行学习网络安全(黑客)或者正在学习,这里开源一份360智榜样学习中心独家出品《网络攻防知识库》,希望能够帮助到你

知识库由360智榜样学习中心独家打造出品,旨在帮助网络安全从业者或兴趣爱好者零基础快速入门提升实战能力,熟练掌握基础攻防到深度对抗。

1、知识库价值

深度: 本知识库超越常规工具手册,深入剖析攻击技术的底层原理与高级防御策略,并对业内挑战巨大的APT攻击链分析、隐蔽信道建立等,提供了独到的技术视角和实战验证过的对抗方案。

广度: 面向企业安全建设的核心场景(渗透测试、红蓝对抗、威胁狩猎、应急响应、安全运营),本知识库覆盖了从攻击发起、路径突破、权限维持、横向移动到防御检测、响应处置、溯源反制的全生命周期关键节点,是应对复杂攻防挑战的实用指南。

实战性: 知识库内容源于真实攻防对抗和大型演练实践,通过详尽的攻击复现案例、防御配置实例、自动化脚本代码来传递核心思路与落地方法。

2、 部分核心内容展示

360智榜样学习中心独家《网络攻防知识库》采用由浅入深、攻防结合的讲述方式,既夯实基础技能,更深入高阶对抗技术。

360智榜样学习中心独家《网络攻防知识库》采用由浅入深、攻防结合的讲述方式,既夯实基础技能,更深入高阶对抗技术。

内容组织紧密结合攻防场景,辅以大量真实环境复现案例、自动化工具脚本及配置解析。通过策略讲解、原理剖析、实战演示相结合,是你学习过程中好帮手。

1、网络安全意识

2、Linux操作系统

3、WEB架构基础与HTTP协议

4、Web渗透测试

5、渗透测试案例分享

6、渗透测试实战技巧

7、攻防对战实战

8、CTF之MISC实战讲解

3、适合学习的人群

一、基础适配人群

  1. 零基础转型者‌:适合计算机零基础但愿意系统学习的人群,资料覆盖从网络协议、操作系统到渗透测试的完整知识链‌;
  2. 开发/运维人员‌:具备编程或运维基础者可通过资料快速掌握安全防护与漏洞修复技能,实现职业方向拓展‌或者转行就业;
  3. 应届毕业生‌:计算机相关专业学生可通过资料构建完整的网络安全知识体系,缩短企业用人适应期‌;

二、能力提升适配

1、‌技术爱好者‌:适合对攻防技术有强烈兴趣,希望掌握漏洞挖掘、渗透测试等实战技能的学习者‌;

2、安全从业者‌:帮助初级安全工程师系统化提升Web安全、逆向工程等专项能力‌;

3、‌合规需求者‌:包含等保规范、安全策略制定等内容,适合需要应对合规审计的企业人员‌;

因篇幅有限,仅展示部分资料,完整版的网络安全学习资料已经上传CSDN,朋友们如果需要可以在下方CSDN官方认证二维码免费领取【保证100%免费】

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/22 15:09:32

Nodejs和vue框架的个人物品管理系统

文章目录个人物品管理系统摘要--nodejs技术栈--结论源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!个人物品管理系统摘要 基于Node.js和Vue框架的个人物品管理系统旨在为用户提供高效、直观的物品管理解决方案。系统采用前后端分离架构…

作者头像 李华
网站建设 2026/5/4 7:58:53

Nodejs和vue框架的基于大数据的水产品安全信息管理系统_ 可视化大屏系统

文章目录基于大数据的水产品安全信息管理系统可视化大屏摘要--nodejs技术栈--结论源码文档获取/同行可拿货,招校园代理 :文章底部获取博主联系方式!基于大数据的水产品安全信息管理系统可视化大屏摘要 该系统结合Node.js后端与Vue.js前端框架&#xff0…

作者头像 李华
网站建设 2026/4/23 11:27:20

前端面试了10来个人,聊聊他们被挂的原因..

现在前端面试真的头大!这周面了9个人全挂,不是没经验,是细节准备太拉胯了! 1. JS基础不牢:闭包、事件循环这些核心概念说不明白,手写Promise.all、深拷贝还卡壳。得搞懂V8引擎咋干活,this绑定、…

作者头像 李华
网站建设 2026/5/4 15:04:41

IT6251FN:LVDS转DisplayPort 1.1a发射机

IT6251 是一款高性能单芯片 De-SSC LVDS 转 DisplayPort 转换器。结合LVDS接收器和DisplayPort发射器,IT6251通过转换功能支持LVDS输入和DisplayPort 1.1a输出。内置的LVDS接收器支持单链路和双链路LVDS输入,内置的DisplayPort发射器完全符合DisplayPort…

作者头像 李华
网站建设 2026/5/7 14:48:57

2026 年CBAM 要不要现在就做?先说结论

如果你是出口欧盟的企业, 2026 年你最容易犯的错误不是“什么都没做”, 而是——在错误的阶段,做了错误的事情。 我先把结论放在最前面: 2026 年,大多数企业不需要“启动完整 CBAM 项目”, 但必须开始…

作者头像 李华
网站建设 2026/4/17 18:15:15

论文写作“隐藏技巧”:7款AI神器告别焦虑,导师不会告诉你的秘密

你知道吗?你隔壁实验室那个从不熬夜、却能轻松产出高质量论文的同学,可能正在用这些“隐藏工具”。而你的导师,大概率知道,却永远不会主动告诉你。 是不是经常感觉,论文写作像一场信息不对等的“军备竞赛”&#xff1f…

作者头像 李华