No.8 笔记 | SQL 查询语句:数据探索的钥匙

2024/10/7 心记 - 致在路上默默奋斗的你
在当今数字化的时代,网络安全已成为我们生活中不可或缺的一部分。它如同守护数字世界的隐形盾牌,保护着我们的隐私、数据和整个社会的稳定运行。 学习网络安全,是踏上一段充满挑战与机遇的征程。
每一个新的知识领域,每一次成功解决的安全问题,都像是在黑暗中点亮的一盏明灯,照亮你前行的道路,引领你走向更高的技术巅峰。 这个领域充满了无限的可能性。你将有机会与顶尖的技术人才并肩作战,共同抵御日益复杂的网络威胁。
你的每一份努力,都在为构建一个更安全的数字环境贡献力量。 不要害怕困难,因为每一次的挫折都是成长的阶梯。每一次对未知的探索,都是对自我的突破。
在网络安全的学习之路上,坚持就是胜利。 相信自己的能力,你拥有塑造一个更安全数字未来的潜力。勇敢地迈出每一步,去探索这个充满魅力的网络安全世界,让你的智慧和技能成为保护数字世界的强大武器。
  • Lixin

一、SQL 查询基础

1. 基本查询结构

SELECT 列名 FROM 表名 [WHERE 条件] [GROUP BY 分组] [ORDER BY 排序] [LIMIT 限制];

2. 常用查询技巧

  • 查询所有字段:SELECT * FROM 表名;
  • 查看表结构:DESC 表名;
  • 去重:SELECT DISTINCT 列名 FROM 表名;
  • 条件查询:使用 WHERE 子句
  • 限制结果:使用 LIMIT 子句
  • 排序:使用 ORDER BY 子句
  • 分组:使用 GROUP BY 子句

3. WHERE 子句常用操作符

  • 比较:=, <>, >, <, >=, <=
  • 范围:BETWEEN ... AND ...
  • 集合:IN (...), NOT IN (...)
  • 模糊匹配:LIKE '模式'(使用 %_ 通配符)
  • 逻辑:AND, OR, NOT

二、高级查询技巧

1. 聚合函数

  • COUNT():计数
  • SUM():求和
  • AVG():平均值
  • MAX():最大值
  • MIN():最小值

2. 分组和筛选

  • GROUP BY:分组
  • HAVING:对分组结果进行筛选

3. 正则表达式

使用 REGEXP 或 RLIKE 进行模式匹配

4. 连接查询

  • INNER JOIN:内连接
  • LEFT JOIN:左连接
  • RIGHT JOIN:右连接
  • FULL JOIN:全连接(MySQL不直接支持,可用UNION模拟)

5. 子查询

在 WHERE 或 FROM 子句中嵌套 SELECT 语句

三、SQL 函数和操作符

1. 字符串函数

  • CONCAT():连接字符串
  • SUBSTRING():截取子串
  • LENGTH():字符串长度
  • UPPER()/LOWER():大小写转换

2. 日期函数

  • NOW():当前日期时间
  • DATE():提取日期部分
  • YEAR()/MONTH()/DAY():提取年/月/日

3. 条件函数

  • IF():简单条件判断
  • CASE:复杂条件判断

4. 系统和信息函数

  • VERSION():数据库版本
  • USER():当前用户
  • DATABASE():当前数据库

四、数据库管理

1. 创建和删除数据库

CREATE DATABASE 数据库名; DROP DATABASE 数据库名;

2. 表操作

  • 创建表:CREATE TABLE
  • 修改表:ALTER TABLE
  • 删除表:DROP TABLE

3. 索引

  • 创建索引:CREATE INDEX
  • 删除索引:DROP INDEX

4. 视图

  • 创建视图:CREATE VIEW
  • 修改视图:ALTER VIEW
  • 删除视图:DROP VIEW

五、事务管理

  • 开始事务:START TRANSACTION
  • 提交事务:COMMIT
  • 回滚事务:ROLLBACK

六、用户管理和权限

  • 创建用户:CREATE USER
  • 授予权限:GRANT
  • 撤销权限:REVOKE

总结与重点记忆

  1. 基本查询结构:SELECT-FROM-WHERE-GROUP BY-HAVING-ORDER BY-LIMIT

  2. WHERE 子句:掌握比较、范围、集合、模糊匹配等条件操作

  3. 聚合函数:COUNT, SUM, AVG, MAX, MIN 的使用场景

  4. 分组查询:GROUP BY 和 HAVING 的配合使用

  5. 连接查询:理解内连接、左连接、右连接的区别

  6. 子查询:能够在 WHERE 和 FROM 子句中使用嵌套查询

  7. 常用函数:熟悉字符串处理、日期处理、条件判断等常用函数

  8. 索引和视图:了解它们对查询性能的影响

  9. 事务管理:理解 ACID 特性,掌握事务的基本操作

  10. 安全性:注意 SQL 注入等安全问题,使用参数化查询


Note: SQL 是一门实践性很强的语言,多动手练习才能真正掌握。从简单查询开始,逐步过渡到复杂查询,同时注意优化查询性能。

相关推荐
Dyn's blog1 分钟前
MySQL和Oracle的区别
数据库·mysql·oracle
羊村懒哥4 分钟前
nginx-虚拟主机配置笔记
服务器·笔记
TiDB_PingCAP16 分钟前
B 站数据库负责人赵月顺:助力海内外业务增长,百套 TiDB 的选型与运维实战
运维·数据库·tidb
xuanloyer20 分钟前
oracle常用语句
数据库·oracle
迷彩的博客22 分钟前
Kingbase数据库备份还原操作手册
数据库·kingbase
LuH112425 分钟前
【论文阅读笔记】HunyuanVideo: A Systematic Framework For Large Video Generative Models
论文阅读·笔记
小负不负25 分钟前
解决ubuntu22.04常见问题
笔记
2301_7808538640 分钟前
Mysql高级
android·数据库·mysql
Karoku0661 小时前
【自动化部署】Ansible循环
linux·运维·数据库·docker·容器·自动化·ansible
牛哄哄的柯南1 小时前
有监督学习 vs 无监督学习:机器学习的两大支柱
人工智能·学习·机器学习