目录
背景 (纪要背景)
问题 (要解决的问题)
说明 (问题对应的说明及补充)
背景
: sql处理过程中,特此纪要!
问题
or null是什么?
or null能做什么?
or null能用在哪里?
说明
: or属于逻辑运算符, or左右两边都存在对应的表达式, 当左边的表达式为true时, 直接跳过开始执行下一步, 不会计算右边的表达式.
: 当左边的表达式返回false后, 此时or null会使用null作为返回值返回.
: or null可以用在逻辑校验中,来处理数据存在null的情况.
Demo(用例)
# 先看下基础数据
SELECT * FROM t1;
# 说明: 下面的数据测试只会用到c3一列,此列中存在三列有值的数据,分别为"eee,fff,ddd",和三列为null的数据.
# 查询c3列中值为"eee"或null的数据行出现的次数.
SELECT COUNT(c3 = 'eee' OR NULL)
FROM t1;
# 查询c3列中值不为"eee"或null的数据行出现的次数.
SELECT COUNT(c3 != 'eee' OR NULL)
FROM t1;
# 如果存在为"eee"的数据行,则只计算包含"eee"数据行的总量.
# 如果不存在为"eee"的数据行,则会计算为null的数据行出现的次数总量.
# 如果数据表中既没有包含"eee"的数据行,也没有为null的数据行,此时计算结果返回为0.
# 查询c3列中值为"666"或null的数据行出现的次数.
# 此时表中根本没有值为"666"的数据行,因此必然会计算为null的数据行.因此返回3.
SELECT COUNT(c3 != '666' OR NULL)
FROM t1;