解释 SQL 查询中使用的不同比较运算符
比较运算符用于将一个表达式与另一个表达式进行比较的条件。比较的结果可以是TRUE、FALSE或UNKNOWN。
=:相等运算符用于测试相等性。
例如,
select ename “employee” from emp where sal=2000;
!=,^=,<>:这些运算符用于不等式测试
例如,
select ename from emp where sal^=4000;
>:result大于给定条件的项目。
例如,
select ename, job from employee wher salary>5000;
<:结果小于给定条件的项目。
例如,
select * from emp where salary<5000;
>=:它检查大于等于测试。
例如,
select * from emp where price>=500;
<=:它检查小于或等于测试。
例如,
select ename from emp where sal<=4000;
IN-“相当于任意数量的”测试。等价于“=ANY”
例如,
select * from emp where ename IN (‘JHON’,’WARD’);
ANY/SOME-将值与列表中的每个值或查询返回的值进行比较。必须以=、!=、>、<、<=或>=开头。如果查询未返回任何行,则计算为false。
例如,
select * from emp where loc=some(‘hyderabad’,’delhi’);
NOTIN-相当于'!=ANY'。如果集合的任何成员为NULL,则评估为FALSE。
例如,
select * from dept where loc NOT IN(‘hyderabd’,’KPHB’);
ALL:将值与列表中的每个值或查询返回的值进行比较。必须以=、!=、>、<或>=开头。如果查询未返回任何行,则评估为TRUE。
例如,
select * from emp where sal>=ALL(1500,5000);
Exist-如果子查询返回至少一行,则为TRUE。
例如,
select * from emp where exists (select ename from emp where manager is NULL);
[NOT]BETWEENxANDy-[Not]大于或等于x且小于或等于y。
例如,
SELECT * FROM emp WHERE sal BETWEEN 2000 AND 3000;
IS[NOT]NULL-测试空值。这是您应该用来测试空值的唯一运算符。
例如,
SELECT ename, deptno FROM emp WHERE comm IS NULL;