在 SQL 查询中使用条件

在 WHERE 子句之后,可以为 SELECT 语句返回的行指定搜索条件。当搜索条件对特定行求值为 True 时,条件会返回一个值。

有效条件包括:

  • 等于
  • Between
  • Like
  • Not In
  • In

请注意以下事项:

  • SQL 查询中选择的条件所返回的参数在数据管理的“目标应用程序筛选器”页上指定。

  • 复杂查询中的 =(等于)符号必须位于 $ 参数之前。

  • 目标应用程序参数的值可以用逗号分隔,例如:IN,BETWEEN,NOT IN。

  • 系统分配绑定参数的数据类型。数字和日期作为整数和日期处理。所有其他值均视为字符串。

  • 条件化筛选器在数据集成中“运行集成”页的“筛选器”选项卡上提供。

下表介绍了可在 SQL 查询中使用的条件。

条件 说明

EQUAL

检查两个表达式是否相等。如果表达式相等,则条件为 True,并返回匹配的记录。

当针对相等条件运行以下 SQL 语句并返回客户 ID 等于 Smith 的记录时:

SELECT * FROM Customers

WHERE CustomerID=1

BETWEEN

检查特定范围之间的值并返回匹配的值。

BETWEEN 条件包含端值。起始值和结束值均包含在内。

BETWEEN 语法:

SELECT column_name(s)

FROM table_name

WHERE column_name BETWEEN value1 AND value2;

LIKE

在 SELECT 语句的 WHERE 子句中使用通配符执行并返回模式匹配。

两个通配符与 LIKE 运算符一起使用:

  • %:百分号表示零、一或多个字符

  • _:下划线表示单个字符

LIKE 语法:

SELECT column1, column2, ...

FROM table_name

WHERE column LIKE pattern

IN

等于值列表中的任何值。

IN 语法:

SELECT column_name1, column_name2, etc

FROM table_name

WHERE column_name1 IN (value1, value2, etc);

NOT IN

检查两个表达式是否相等。如果表达式不相等,则条件为 True 并返回不匹配的记录。

NOT IN 语法:

SELECT column_name1, column_name2, etc

FROM table_name

WHERE column_name1 NOT IN (value1, value2, etc);