如何为同一列指定多个搜索条件 (Visual Database Tools)

在某些情况下,可能希望对同一数据列应用多个搜索条件。例如,您可能希望:

  • employee 表中搜索几个不同的名字或搜索位于不同薪金范围内的雇员。这种类型的搜索需要使用 OR 条件。
  • 搜索以单词“The”开头并包含单词“Cook”的书名。这种类型的搜索需要使用 AND 条件。
ms178066.note(zh-cn,SQL.90).gif注意:
本主题中的信息对查询的 WHERE 和 HAVING 子句中的搜索条件都适用。这些示例主要讨论创建 WHERE 子句,但其原理适用于这两种类型的搜索条件。

若要在同一数据列中搜索可选值,可指定 OR 条件。若要搜索同时满足几个条件的值,可指定 AND 条件。

指定 OR 条件

使用 OR 条件,您可以指定要在列中搜索的多个可选值。此选项扩展了搜索范围,可以比搜索单一值返回更多的行。

ms178066.note(zh-cn,SQL.90).gif提示:
通常可以改用 IN 运算符在同一数据列中搜索多个值。

指定 OR 条件

  1. “条件”窗格中,添加要搜索的列。

  2. 在刚刚添加的数据列的**“筛选器”**列中,指定第一个条件。

  3. 在同一数据列的**“或...”**列中,指定第二个条件。

查询和视图设计器将创建包含 OR 条件的 WHERE 子句,如下所示:

SELECT fname, lname
FROM employees
WHERE (salary < 30000) OR (salary > 100000)

指定 AND 条件

使用 AND 条件,您可以指定某列中的值必须同时满足两个(或更多)条件,才能使该行包含在结果集中。此选项缩小了搜索范围,通常会比搜索单一值返回更少的行。

ms178066.note(zh-cn,SQL.90).gif提示:
若要搜索一定范围内的值,可使用 BETWEEN 运算符替代 AND 来链接两个条件。

指定 AND 条件

  1. 在“条件”窗格中,添加要搜索的列。

  2. 在刚刚添加的数据列的**“筛选器”**列中,指定第一个条件。

  3. 将同一数据列再次添加到“条件”窗格中,将其放在网格的空行中。

  4. 在数据列的第二个实例的**“筛选器”**列中,指定第二个条件。

查询设计器将创建包含 AND 条件的 WHERE 子句,如下所示:

SELECT title_id, title
FROM titles
WHERE (title LIKE '%Cook%') AND 
  (title LIKE '%Recipe%')

请参阅

概念

在“条件”窗格中组合搜索条件的约定 (Visual Database Tools)

其他资源

指定搜索条件 (Visual Database Tools)

帮助和信息

获取 SQL Server 2005 帮助