Teradata教程

Teradata 逻辑和条件运算符

Teradata 支持以下逻辑和条件运算符。这些运算符用于执行比较和组合多个条件。
语法 含义
> 大于
小于
>= 大于或等于
<= 小于或等于
= 等于
BETWEEN 如果值在范围内
IN 如果 <表达式> 中的值
NOT IN 如果值不在 <expression>
IS NULL 如果值为NULL
IS NOT NULL 如果值为 NOT NULL
AND 组合多个条件。仅当满足所有条件时才评估为真
OR 组合多个条件。仅当满足任一条件时才评估为真。
NOT 颠倒条件的含义

之间

BETWEEN 命令用于检查一个值是否在一个值的范围内。

示例

考虑以下员工表。
EmployeeNo 名字 姓氏 JoinedDate 部门编号 出生日期
101 迈克 詹姆斯 2005/3/27 1 1/5/1980
102 罗伯特 威廉姆斯 4/25/2007 2 3/5/1983
103 彼得 保罗 3/21/2007 2 4/1/1983
104 亚历克斯 斯图尔特 2/1/2008 2 11/6/1984
105 罗伯特 詹姆斯 1/4/2008 3 12/1/1984
以下示例提取员工编号在 101,102 到 103 之间的记录。
SELECT EmployeeNo, FirstName FROM  
Employee 
WHERE EmployeeNo BETWEEN 101 AND 103;
执行上述查询时,返回员工编号在 101 到 103 之间的员工记录。
*** Query completed. 3 rows found. 2 columns returned. 
*** Total elapsed time was 1 second. 
 EmployeeNo            FirstName 
-----------------------------------------
   101                   Mike 
   102                   Robert 
   103                   Peter

输入

IN 命令用于根据给定的值列表检查值。

示例

以下示例提取员工编号为 101、102 和 103 的记录。
SELECT EmployeeNo, FirstName FROM  
Employee 
WHERE EmployeeNo in (101,102,103);
以上查询返回以下记录。
*** Query completed. 3 rows found. 2 columns returned. 
*** Total elapsed time was 1 second.  
 EmployeeNo            FirstName 
-----------------------------------------
   101                   Mike 
   102                   Robert 
   103                   Peter

不在

NOT IN 命令反转 IN 命令的结果。它获取值与给定列表不匹配的记录。

示例

以下示例获取员工编号不在 101、102 和 103 中的记录。
SELECT * FROM  
Employee 
WHERE EmployeeNo not in (101,102,103);
以上查询返回以下记录。
*** Query completed. 2 rows found. 6 columns returned. 
*** Total elapsed time was 1 second. 
 EmployeeNo          FirstName                      LastName 
----------------------------------------------------------------------   
    104                Alex                          Stuart 
    105                Robert                        James 
昵称: 邮箱:
Copyright © 2022 立地货 All Rights Reserved.
备案号:京ICP备14037608号-4