博客
关于我
sql编写小技巧
阅读量:398 次
发布时间:2019-03-06

本文共 382 字,大约阅读时间需要 1 分钟。

由于以前日常开发,SQL写的少,没有深入玩过复杂查询,最近写报表的时候实实在在被虐了一遍, 遂记录一些小技巧

1、update set 时的执行先后顺序  

2、where和on的筛选    

总结:

sql执行一定要注意执行语句的先后顺序,字段顺序一换,结果天差地别

在update的时候,都是行操作更新,变量和本身字段的赋值顺序尤为关键。

where和on,在筛选的时候要注意我们的需求是否会带出空行,还是有行但是部分字段是NULL的数据,特别的这些数据还会去关联的时候,会漏数据或者带出空数据,导致结果不准。

我之后的习惯是都join一遍再where进行筛选(最普遍的方式),导致空行,实际其实有些join的表它本身就是没有数据的,而筛选的时候又指定了它,导致其他与该表之前关联的表数据丢失了。需求其实是在该表没有数据的时候值取0的(比如查价格表,并不是所有产品都价格)

转载地址:http://sxukz.baihongyu.com/

你可能感兴趣的文章
使用QT实现一个简单的登陆对话框(纯代码实现C++)
查看>>
QT :warning LNK4042: 对象被多次指定;已忽略多余的指定
查看>>
GLFW 源码 下载-编译-使用/GLAD配置
查看>>
针对单个网站的渗透思路
查看>>
Typescript 学习笔记六:接口
查看>>
【ASP.NET】ASP.NET中权限验证使用OnAuthorization实现
查看>>
02、MySQL—数据库基本操作
查看>>
OpenJDK1.8.0 源码解析————HashMap的实现(一)
查看>>
MySQL-时区导致的时间前后端不一致
查看>>
2021-04-05阅读小笔记:局部性原理
查看>>
go语言简单介绍,增强了解
查看>>
python file文件操作--内置对象open
查看>>
架构师入门:搭建基本的Eureka架构(从项目里抽取)
查看>>
MongoDB 快速扫盲贴
查看>>
EXTJS4.2——10.Tab+Iframe
查看>>
one + two = 3
查看>>
sctf_2019_easy_heap
查看>>
PyQt5之音乐播放器
查看>>
Redis进阶实践之十八 使用管道模式提高Redis查询的速度
查看>>
SQL注入
查看>>