当前位置:网站首页> 避坑:Sql中 in 和not in中有null值的情况说明
避坑:Sql中 in 和not in中有null值的情况说明
2022-07-07 13:11:00 【1024问】
Sql中in和not in中有null值的情况
1.not in 中包含null值的情况
2.in 中包含null值的情况
mysql有默认值但是仍然插入null问题
Sql中in和not in中有null值的情况1)in的逻辑规则是or not in 的逻辑规则是 and
2)判断null 的sql语句为 is not null 或者 is null
3)当遇到 null = null 的判断是时由于不符合null的判断规则,所以结果一定为flase
1.not in 中包含null值的情况select * from A where A.name not in (select B.name from B )
在上面的not in的查询中如果B表的name字段存在空值时,不论何种情况上述语句的查询结果一定为空
2.in 中包含null值的情况select * from A where A.name in (select B.name from B )
在上面的 in 的查询中如果B表的name字段存在空值时,如果A表中存在name字段也存在空值,那么上述语句的查询结果中不会显示A表中的空值
mysql有默认值但是仍然插入null问题今天发现项目中对应的某条记录某一列的值为null,但是针对这条记录这一列的值不应该为null。
检查代码发现是在插入的时候没有对这一列对应的成员变量赋值,即便数据库这一列有默认值,在插入到数据库时依然插入了null。
mysql 的默认值只有在insert语句中没有这个字段时才会生效,如果insert中有插入该字段而该字段取值又为null,null值将被插入到表中,默认值此时失效。
在mybatis开发中通常会直接插入一个表对象,表中所有字段都会插入,因此如果要设置默认值,应该在业务层写逻辑,而不能依赖mysql的default来设置默认值。
另外尽量保证对于数据库的新增应该使用动态的sql来进行操作,这样也能避免上面问题。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持软件开发网。
边栏推荐
- Niuke real problem programming - Day17
- Pandora IOT development board learning (HAL Library) - Experiment 12 RTC real-time clock experiment (learning notes)
- Unity之ASE实现全屏风沙效果
- With 8 modules and 40 thinking models, you can break the shackles of thinking and meet the thinking needs of different stages and scenes of your work. Collect it quickly and learn it slowly
- Ffmpeg --- image processing
- JSON解析实例(Qt含源码)
- 【OBS】RTMPSockBuf_ Fill, remote host closed connection.
- 【深度学习】语义分割实验:Unet网络/MSRC2数据集
- Cocoscreator resource encryption and decryption
- Five pain points for big companies to open source
猜你喜欢
MySQL bit类型解析
[data mining] visual pattern mining: hog feature + cosine similarity /k-means clustering
[target detection] yolov5 Runtong voc2007 data set
Ctfshow, information collection: web2
Xiaomi's path of chip self-development
Computer win7 system desktop icon is too large, how to turn it down
CTFshow,信息搜集:web10
Qu'est - ce qu'une violation de données
广州开发区让地理标志产品助力乡村振兴
Protection strategy of server area based on Firewall
随机推荐
[follow Jiangke University STM32] stm32f103c8t6_ PWM controlled DC motor_ code
CTFshow,信息搜集:web14
Shengteng experience officer Episode 5 notes I
Ctfshow, information collection: web4
[deep learning] semantic segmentation experiment: UNET network /msrc2 dataset
CTFshow,信息搜集:web4
Pinduoduo lost the lawsuit, and the case of bargain price difference of 0.9% was sentenced; Wechat internal test, the same mobile phone number can register two account functions; 2022 fields Awards an
【數據挖掘】視覺模式挖掘:Hog特征+餘弦相似度/k-means聚類
Ctfshow, information collection: web2
buffer overflow protection
asp.netNBA信息管理系统VS开发sqlserver数据库web结构c#编程计算机网页源码项目详细设计
时空可变形卷积用于压缩视频质量增强(STDF)
Unity之ASE实现全屏风沙效果
上半年晋升 P8 成功,还买了别墅!
Ctfshow, information collection: web5
Bits and Information & integer notes
CPU与chiplet技术杂谈
Used by Jetson AgX Orin canfd
leetcode 241. Different Ways to Add Parentheses 为运算表达式设计优先级(中等)
JSON parsing instance (QT including source code)