表达式结构

表达式由列名、文本、运算符或函数的任何组合组成。

遵循下列指南组合元素以构成表达式:

  • 通过键入列名引用列。 如果查询使用多个表并且使用的列名不唯一,则必须将表名和句点添加到列名。 下面的示例显示用表名 employee 限定的列名 job_id:

    employee.job_id
    
  • 要包含文本,请用单引号将文本括起来;对于数不必使用引号。

    备注

    在某些数据库中,单引号内的项被解释为文本值,而双引号内的项被解释为数据库对象,如列或表引用。因此,虽然查询和视图设计器可以接受双引号中的项,但其解释的意思可能与您预期的不同。在 SQL Server 中,查询和视图设计器总是将双引号解释为数据库对象分隔符。

  • 对于数可使用标准算术运算符,对于组合字符串可使用串联运算符。

  • 使用圆括号来建立运算符的优先级。

  • 如果包含函数,则对传递到函数的参数使用同样的指南。 即键入列名引用列,用单引号括起文本,等等。

  • 如果将列名作为函数参数传递,则要确保列的数据类型适合函数参数。

  • 可以在表达式中包含返回标量值的用户定义函数。

下表阐释查询中表达式的使用。

表达式*

结果

SELECT (price * .9)FROM products

显示打折价格(价格列中的值下调 10%)。

SELECT sales.qty, titles.price

FROM sales INNER JOIN titles ON sales.title_id = titles.title_id ORDER BY (sales.qty * titles.price)

联接两个表后,按订单总价(数量乘以价格)对结果集进行排序。

SELECT au_lname, au_fname FROM authors WHERE (SUBSTRING(phone, 1, 3) = '415')

显示区号在旧金山地区的作者。

SELECT ord_num, ord_date FROM sales WHERE (ord_date >= DATEADD(day, -10, GETDATE()))

查找 sales 表中最近 10 天的所有订单。 今天的日期由 GETDATE( ) 函数返回。

*   此处显示的一些运算符和函数是某一数据库特有的。 有关可用的运算符和函数的详细信息,请参见数据库文档。

请参见

概念

预定义的表达式变量

查询中的表达式

其他资源

使用参数查询