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

MySQL注意事项与规范

注意事项

SQL大小写规范

  • MySQL在Windows环境下是大小写不敏感的
  • MySQL在Linux环境下是大小写敏感的
    - 数据库名、表名、表的别名、变量名是严格区分大小写的
    - 关键字、函数名、列名(或字段名)、列的别名(字段的别名)是忽略大小写的

空值(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.dtcms.com/a/363997.html

相关文章:

  • 开发AI编程工具的方案分析
  • SPI片选踩坑实录(硬件片选和软件片选)
  • Nacos配置文件攻防思路总结|揭秘Nacos被低估的攻击面|挖洞技巧
  • Python 基础核心概念与实战代码示例(含数据类型、变量、流程控制、数据结构、函数与文件操作)
  • # Shell 文本处理三剑客:awk、sed 与常用小工具详解
  • 如何修改 Docker 默认网段(网络地址池)配置:以使用 10.x.x.x 网段为例
  • 2024 年 AI 产业格局复盘:头部企业竞逐方向与中小玩家生存破局点
  • 跨境电商账号风控核心:IP纯净度与浏览器指纹的防护策略
  • 基于单片机车流车速检测系统设计
  • 90%的C++ 程序员都忽略了这个容器——unordered_multiset,让我们来看看开源项目中怎么使用的
  • 最小二乘法之线性回归篇(普通最小二乘OLS、加权最小二乘WLS、广义最小二乘GLS)-原理讲解
  • 毕业项目推荐:69-基于yolov8/yolov5/yolo11的轴承缺陷检测识别系统(Python+卷积神经网络)
  • Python入门教程之类型转换
  • 【 HarmonyOS 6 】HarmonyOS智能体开发实战:Function组件和智能体创建
  • 博客系统的测试
  • Shell脚本一键监控平台到期时间并钉钉告警推送指定人
  • 黑马头条面试重点业务
  • 如何避免研发文档命名混乱导致难以检索
  • 我们正在成为机械半类人你信吗?
  • Photoshop - Ps 处理图层
  • 数字社会学必读书目推荐!唐兴通20年数字社会学探索思想之旅再回顾人工智能社会学AI社会学下新秩序
  • 计算机保研机试准备——C++算法题(二)
  • 嵌入式学习 day62 SPI子系统、adxl345驱动、驱动回顾
  • 依托深兰科技AI技术生态,深兰教育携手沪上高校企业启动就业科创营
  • CRM数据暴风升级!3步将DataEase可视化神技嵌入Cordys,销售分析直接开挂!
  • 如何解决pip安装报错ModuleNotFoundError: No module named ‘flake8’问题
  • 【Vue2 ✨】Vue2 入门之旅(十):Vuex 入门
  • 【机器学习学习笔记】Matplotlib 基本操作
  • 论文解读:基于 77 GHz FMCW 毫米波雷达的舱内占位检测
  • HDI是什么?与普通线路板有何区别?优势在哪?