第六章 函数、谓词、CASE表达式 6-2 谓词

时间:2021-01-11 14:46:43
一、什么是谓词
需要满足返回值为真值的函数。谓词的返回值全都是真值(TRUE/ FALSE/UNKNOWN)
如:LIKE/BETWEEN /IS NULL/IS NOT NULL/IN/EXISTS
 
二、LIKE谓词——字符串的部分一致查询
%代表“0字符以上的任意字符串”的特殊符号
_(下划线)代表“任意一个字符”的特殊符号
前方一致查询:ddd%
中间一致查询:%ddd%
后方一致查询:%ddd
 
三、BETWEEN谓词——范围查询
第六章 函数、谓词、CASE表达式 6-2 谓词
结果中包含100和1000两个临界值,如果不想包含这两个临界值,不需使用<和>

 
四、IS NULL,IS NOT NULL——判断是否为NULL

第六章 函数、谓词、CASE表达式 6-2 谓词
 
六、IN谓词——OR的简便用法
第六章 函数、谓词、CASE表达式 6-2 谓词
注:IN 和NOT IN是无法选取出NULL数据的。
 
六、使用子查询作为IN谓词的参数
1、IN和子查询
子查询就是 SQL 内部生成的表,因此也可以说“能够将表作为 IN 的参数”。同理,我们还可以说“能够将视图作为 IN 的参数”。
第六章 函数、谓词、CASE表达式 6-2 谓词
2、NOT IN 和子查询
 
七、EXIST谓词(希望大家达到SQL中级水平时掌握此工具)
1、EXIST谓词的使用方法
EXIST的作用是“判断是否存在满足某种条件的记录”。如果存在这样的记录就返回真(TRUE),如果不存在就返回假(FALSE)。
EXIST(存在)谓词的主语是“记录”。

第六章 函数、谓词、CASE表达式 6-2 谓词
EXIST谓词的参数:
EXIST只需要在右侧写1个参数,该参数通常是一个子查询。EXIST通常会使用关联子查询作为参数。
 
子查询中的SELECT*:
大家可以把EXIST的子查询中书写SELECT*当做SQL的一种习惯。
 
使用NOT EXIST 替换NOT IN:
第六章 函数、谓词、CASE表达式 6-2 谓词
注:用EXIST 比用IN快。

 
第六章 函数、谓词、CASE表达式 6-2 谓词

 

第六章 函数、谓词、CASE表达式 6-2 谓词