PostgreSQL 运算符
WHERE 子句中的运算符
我们可以在 WHERE
子句中使用不同的运算符
= | 等于 |
---|---|
< | 小于 |
> | 大于 |
<= | 小于或等于 |
>= | 大于或等于 |
<> | 不等于 |
!= | 不等于 |
LIKE | 检查值是否匹配模式(区分大小写) |
ILIKE | 检查值是否匹配模式(不区分大小写) |
AND | 逻辑 AND |
OR | 逻辑 OR |
IN | 检查值是否在值范围内 |
BETWEEN | 检查值是否在值范围内 |
IS NULL | 检查值是否为 NULL |
NOT | 产生负面结果,例如 NOT LIKE 、NOT IN 、NOT BETWEEN |
等于
当您想要返回所有列等于指定值的记录时,使用 =
运算符
小于
当您想要返回所有列小于指定值的记录时,使用 <
运算符。
大于
当您想要返回所有列大于指定值的记录时,使用 >
运算符。
小于或等于
当您想要返回所有列小于或等于指定值的记录时,使用 <=
运算符。
大于或等于
当您想要返回所有列大于或等于指定值的记录时,使用 >=
运算符。
不等于
当您想要返回所有列不等于指定值的记录时,使用 <>
运算符
您可以使用 !=
运算符获得相同的结果
LIKE
当您想要返回所有列等于指定模式的记录时,使用 LIKE
运算符。
模式可以是绝对值,如 'Volvo',也可以包含具有特殊含义的通配符。
与 LIKE 运算符一起使用的通配符有两个
- 百分号
%
代表零个、一个或多个字符。 - 下划线符号
_
代表一个字符。
LIKE 运算符区分大小写。
ILIKE
与 LIKE 运算符相同,但 ILIKE 不区分大小写。
AND
逻辑 AND
运算符用于检查多个条件
OR
逻辑 OR
运算符用于检查多个条件中的一个为真
IN
当列值与列表中的任何值匹配时,使用 IN
运算符
示例
返回所有品牌在以下列表中的记录:('Volvo', 'Mercedes', 'Ford')
SELECT * FROM cars
WHERE brand IN ('Volvo', 'Mercedes', 'Ford');
运行示例 »
BETWEEN
当列值在指定的值范围内时,使用 BETWEEN
运算符
BETWEEN 运算符包含 _from_ 和 _to_ 值,这意味着在上面的示例中,结果将包括 1970 年和 1980 年制造的汽车。
IS NULL
当列值为 NULL 时,使用 IS NULL
运算符
NOT
NOT 运算符可以与 LIKE、ILIKE、IN、BETWEEN 和 NULL 运算符一起使用,以反转运算符的真值。
示例:NOT IN
返回所有品牌不在以下列表中的记录:('Volvo', 'Mercedes', 'Ford')
SELECT * FROM cars
WHERE brand NOT IN ('Volvo', 'Mercedes', 'Ford');
运行示例 »
示例:NOT BETWEEN
返回所有年份不在 1970 年到 1980 年之间的记录
SELECT * FROM cars
WHERE year NOT BETWEEN 1970 AND 1980;
运行示例 »
NOT BETWEEN 运算符不包括 _from_ 和 _to_ 值,这意味着在上面的示例中,结果将不包括 1970 年和 1980 年制造的汽车。
cars 表没有 NULL 值的列,因此上面的示例将返回所有 4 行。