在SQL中,谓词就是返回值位真值得函数。
对于通常的函数来说,返回值有可能是数字、字符串或者日期等,但是谓词的返回值都是真值(true/false/unknown)。这是谓词和函数的最大区别。
SQL中的谓词主要有 LKIE、BETWEEN、IS NULL、IS NOT NULL、IN、EXISTS
一、LIKE——字符串的部分一致查询(模糊查询)
部门一致可分为前方一致、中间一致、后方一致三种类型。
语法如下:
①前方一致select * from user where username like 'aaa%';
②中间一致select * from user where username like '%aaa%';
③后方一致select * from user where username like '%aaa';
“%”代表“0字符以上的任意字符串”的特殊符号。
注意:我们还可以使用“_”l来代替“%”,不同的是,“_”代表“任意1个字符”
假定user表中的username 有一下三种情况:aaabbb、aaabb、aaaCCbb
如果想要查出“aaa”+任意2个字符的记录,可以使用下面的SQL
select * from user where username like 'aaa__';(两个_)
二、BETWEEN(and)——范围查询
BETWEEN的特点是结果中会包含临界值。
三、IS NULL、IS NOT NULL
查询某些值位NULL或不为NULL的数据列是使用。
四、IN——OR的简便用法 反义;NOT IN
使用IN和NOT IN 时,是无法选出NULL数据的。
IN谓词可以使用子查询作为其参数来使用。子查询即使SQL内部生成的表,因此可以说能将表或视图作为IN的参数。
五、EXIST
EXIST的作用就是判断是否存在满足某种条件的记录,如果存在就返回真(true),不存在就返回假(false)。
NOT EXIST 与之正好相反。