当前位置: 首页 > news >正文

MySQL注意事项与规范 - 实践

MySQL注意事项与规范 - 实践

注意事项

SQL大小写规范

空值(null)参与运算

所有运算符或列值遇到null值,结果的运算都为null

这里你一定要注意,在MySQL里面,空值不等于空字符串。一个空字符串的长度是0,而一个空值的长度为空。而且,在MySQL里面,空值是占用空间的。

MySQL的+

在Java中,+的左右两边如果有字符串,那么表示字符串的拼接。但是在MySQL中+只表示数值相加。如果遇到非数值类型,先尝试转换成数值,要是转失败,就按0计算。(补充:MySQL中字符串拼接要使用字符串函数CONCAT()实现)

多表查询有相同的列,在列名之前加上表名前缀

建议:从sql优化的角度,建议多表查询时,每个字段都指明其所在的表。指明了,数据库就直接从目标表中查询字段,如果不指明,数据库就从表的所有字段中查询,增加了查询时间。

了解:附录:常用的SQL标准有哪些

有区别的。就是在正式开始讲连接表的种类时,我们首先需要知道 SQL 存在不同版本的标准规范,缘于不同规范下的表连接操控

SQL 有两个重要的标准,分别是 SQL92 和 SQL99 。92 和 99 代表了标准提出的时间,SQL92 就是 92 年提出的标准规范。当然除了 SQL92 和 SQL99 以外,还存在 SQL-86、SQL-89、SQL:2003、SQL:2008、SQL:2011 和 SQL:2016 等其他的标准。

这么多标准,到底该学习哪个呢?实际上最重要的 SQL 标准就是 SQL92 和 SQL99。一般来说 SQL92 的形式更简单,但是写的 SQL 语句会比较长,可读性较差。而 SQL99 相比于 SQL92 来说,语法更加复杂,但可读性更强。我们从这两个标准发布的页数也能看出,SQL92 的标准有 500 页,而 SQL99 标准超过了1000 页。实际上从 SQL99 之后,很少有人能掌握所有内容,因为确实太多了。就好比我们利用Windows、Linux 和 Office 的时候,很少有人能掌握全部内容一样。我们只需要掌握一些核心的能力,满足日常工作的需求即可。

SQL92 和 SQL99 是经典的 SQL 标准,也分别叫做 SQL-2 和 SQL-3 标准。也正是在这两个标准发布之后,SQL 影响力越来越大,甚至超越了数据库领域。现如今 SQL 已经不仅仅是数据库领域的主流语言,还是信息领域中信息处理的主流语言。在图形检索、图像检索以及语音检索中都能看到 SQL 语言的应用。

规范

多表查询表的别名

需要注意的是,如果我们启用了表的别名,在查询字段中、过滤条件中就只能运用别名进行代替,不能运用原有的表名,否则就会报错。

在这里插入图片描述

控制连接表的数量

在这里插入图片描述

http://www.zskr.cn/news/5316.html

相关文章:

  • 西电微机原理-第七章 常用接口器件
  • CF1264D1 Beautiful Bracket Sequence (easy version)
  • 西电微机原理-第六章 输入输出技术
  • c#给原文件重命名
  • 提升员工绩效的5大人才管理软件评测与分析
  • LLaVA- Improved Baselines with Visual Instruction Tuning - jack
  • Liunx 硬盘扩容
  • 基于WSL下载Hadoop和HBASE
  • revit二次开发之 钢筋功能详细分析
  • java-wxj02
  • 利用Myo臂环采集肌电信号和角速度来实现实时手势识别
  • 实用指南:leetcode 966. 元音拼写检查器 中等
  • List与Dictionary区别
  • 汇编语言[王爽]-13 int指令【中断实现loop、jmp】
  • Supabase云同步架构:Flutter应用的数据同步策略
  • 【SPIE出版】第五届先进制造技术与电子信息国际学术会议(AMTEI 2025)
  • 2025.9.15 考试总结
  • 汇编语言[王爽]-02 寄存器
  • 2.docker 安装
  • 搞定SPI开发:硬件设计精讲与CH390H示例应用
  • 我开发的软件和开源/免费软件
  • ubuntu 20.04安装mysql 5.7
  • 企业微信逆向开发协议,ipad协议调用方式
  • OpenStack Nova Scheduler 计算节点选择机制
  • 记一种很新的 bitset
  • 有向图强连通分量
  • Kafka 消费者元数据topicId变化问题
  • 【2025-09-14】连岳摘抄
  • GZY.Quartz.MUI(基于Quartz的UI可视化操作组件) 2.8.0发布 新增仪表盘和检索功能
  • MacOS升级15.2后的问题(二):无法修改mac网络地址