Fork me on GitHub

【SqlServer系列】表达式(expression)

1   概述

 本篇这文章主要概述SqlServer表达式。

2   具体内容

 2.1  使用范围

SQL Server(2008开始) ;Azure SQL数据库;Azure  SQL数据仓库;并行数据仓库

2.2  语法

 是SQL Server数据库引擎评估以获取单个数据值的符号和运算符的组合。简单表达式可以是单个常量,变量,列或标量函数。运算符可用于将两个或多个简单表达式连接到一个复杂的表达式中。

1 -- Syntax for SQL Server and Azure SQL Database  
2 
3 { constant | scalar_function | [ table_name. ] column | variable   
4     | ( expression ) | ( scalar_subquery )   
5     | { unary_operator } expression   
6     | expression { binary_operator } expression   
7     | ranking_windowed_function | aggregate_windowed_function  
8 }

 

 1 -- Syntax for Azure SQL Data Warehouse and Parallel Data Warehouse  
 2 
 3 -- Expression in a SELECT statement  
 4 <expression> ::=   
 5 {  
 6     constant   
 7     | scalar_function   
 8     | column  
 9     | variable  
10     | ( expression  )  
11     | { unary_operator } expression   
12     | expression { binary_operator } expression   
13 }  
14 [ COLLATE Windows_collation_name ]  
15 
16 -- Scalar Expression in a DECLARE, SET, IF…ELSE, or WHILE statement  
17 <scalar_expression> ::=  
18 {  
19     constant   
20     | scalar_function   
21     | variable  
22     | ( expression  )  
23     | (scalar_subquery )  
24     | { unary_operator } expression   
25     | expression { binary_operator } expression   
26 }  
27 [ COLLATE { Windows_collation_name ]

2.3  参数

 

译文:

 

2.4 表达结果

对于由单个常量,变量,标量函数或列名组成的简单表达式:表达式的数据类型,排序规则,精度,比例和值是数据类型,排序规则,精度,比例和值参考元素。

当使用比较或逻辑运算符组合两个表达式时,生成的数据类型为Boolean,该值为以下之一:TRUE,FALSE或UNKNOWN。有关布尔数据类型的更多信息,请参阅比较运算符(Transact-SQL)

当使用算术,按位或字符串运算符组合两个表达式时,操作员将确定生成的数据类型。

由许多符号和运算符组成的复杂表达式评估为单值结果。通过组合表达式来确定生成的表达式的数据类型,排序规则,精度和值,每次两个,直到达到最终结果。表达式组合的顺序由表达式中运算符的优先级定义。

 2.5 备注

3   参考文献

 【01】https://docs.microsoft.com/zh-cn/sql/t-sql/language-elements/expressions-transact-sql

4   版权

 

  • 感谢您的阅读,若有不足之处,欢迎指教,共同学习、共同进步。
  • 博主网址:http://www.cnblogs.com/wangjiming/。
  • 极少部分文章利用读书、参考、引用、抄袭、复制和粘贴等多种方式整合而成的,大部分为原创。
  • 如您喜欢,麻烦推荐一下;如您有新想法,欢迎提出,邮箱:2016177728@qq.com。
  • 可以转载该博客,但必须著名博客来源。
posted @ 2017-08-20 16:19  Alan_beijing  阅读(3902)  评论(0编辑  收藏  举报