T-SQL语法的字符和符号的含义
Meaning of characters and symbols of T-SQL syntax
以下是 SQL 服务器中更新语句的语法。我想在我过去,我理解语法定义中的一些 symbols/characters,但从未真正真正理解 SQL 语法中的所有 symbols/characters 意思。有人可以帮助我理解以下语法定义中的以下含义吗?
[ ]
{ }
[...n]
[,...n]
<some_text>
@token
::=
.
|
.WRITE
https://msdn.microsoft.com/en-us/library/ms177523.aspx
[ WITH <common_table_expression> [...n] ]
UPDATE
[ TOP ( expression ) [ PERCENT ] ]
{ { table_alias | <object> | rowset_function_limited
[ WITH ( <Table_Hint_Limited> [ ...n ] ) ]
}
| @table_variable
}
SET
{ column_name = { expression | DEFAULT | NULL }
| { udt_column_name.{ { property_name = expression
| field_name = expression }
| method_name ( argument [ ,...n ] )
}
}
| column_name { .WRITE ( expression , @Offset , @Length ) }
| @variable = expression
| @variable = column = expression
| column_name { += | -= | *= | /= | %= | &= | ^= | |= } expression
| @variable { += | -= | *= | /= | %= | &= | ^= | |= } expression
| @variable = column { += | -= | *= | /= | %= | &= | ^= | |= } expression
} [ ,...n ]
[ <OUTPUT Clause> ]
[ FROM{ <table_source> } [ ,...n ] ]
[ WHERE { <search_condition>
| { [ CURRENT OF
{ { [ GLOBAL ] cursor_name }
| cursor_variable_name
}
]
}
}
]
[ OPTION ( <query_hint> [ ,...n ] ) ]
[ ; ]
<object> ::=
{
[ server_name . database_name . schema_name .
| database_name .[ schema_name ] .
| schema_name .
]
table_or_view_name}
来自联机丛书 (https://msdn.microsoft.com/en-us/library/ms177563.aspx) 中的 SQL Server Transact-SQL 语法约定主题:
UPPERCASE
交易-SQL 个关键字。
italic
用户提供的 Transact-SQL 语法参数。
bold
数据库名称、table 名称、列名称、索引名称、存储过程、实用程序、数据类型名称和必须完全按照所示键入的文本。
underline
表示语句中省略包含下划线值的子句时应用的默认值。
| (vertical bar)
分隔括在方括号或花括号中的语法项。您只能使用其中一项。
[ ] (brackets)
可选语法项。不要输入括号。
{ } (braces)
必需的语法项。不要输入大括号。
[,...n]
表示前一项可以重复n次。出现次数以逗号分隔。
[...n]
表示前一项可以重复n次。出现的次数用空格分隔。
;
Transact-SQL statement terminator.Although 此版本 SQL Server 中的大多数语句不需要分号,在以后的版本中将需要分号.
<label> ::=
语法块的名称。此约定用于对冗长语法的部分或可在语句中多个位置使用的语法单元进行分组和标记。每个可以使用语法块的位置都用包含在 V 形中的标签表示:.
集合是表达式的集合,例如;列表是集合的集合,例如 .
以下是 SQL 服务器中更新语句的语法。我想在我过去,我理解语法定义中的一些 symbols/characters,但从未真正真正理解 SQL 语法中的所有 symbols/characters 意思。有人可以帮助我理解以下语法定义中的以下含义吗?
[ ]
{ }
[...n]
[,...n]
<some_text>
@token
::=
.
|
.WRITE
https://msdn.microsoft.com/en-us/library/ms177523.aspx
[ WITH <common_table_expression> [...n] ]
UPDATE
[ TOP ( expression ) [ PERCENT ] ]
{ { table_alias | <object> | rowset_function_limited
[ WITH ( <Table_Hint_Limited> [ ...n ] ) ]
}
| @table_variable
}
SET
{ column_name = { expression | DEFAULT | NULL }
| { udt_column_name.{ { property_name = expression
| field_name = expression }
| method_name ( argument [ ,...n ] )
}
}
| column_name { .WRITE ( expression , @Offset , @Length ) }
| @variable = expression
| @variable = column = expression
| column_name { += | -= | *= | /= | %= | &= | ^= | |= } expression
| @variable { += | -= | *= | /= | %= | &= | ^= | |= } expression
| @variable = column { += | -= | *= | /= | %= | &= | ^= | |= } expression
} [ ,...n ]
[ <OUTPUT Clause> ]
[ FROM{ <table_source> } [ ,...n ] ]
[ WHERE { <search_condition>
| { [ CURRENT OF
{ { [ GLOBAL ] cursor_name }
| cursor_variable_name
}
]
}
}
]
[ OPTION ( <query_hint> [ ,...n ] ) ]
[ ; ]
<object> ::=
{
[ server_name . database_name . schema_name .
| database_name .[ schema_name ] .
| schema_name .
]
table_or_view_name}
来自联机丛书 (https://msdn.microsoft.com/en-us/library/ms177563.aspx) 中的 SQL Server Transact-SQL 语法约定主题:
UPPERCASE
交易-SQL 个关键字。
italic
用户提供的 Transact-SQL 语法参数。
bold
数据库名称、table 名称、列名称、索引名称、存储过程、实用程序、数据类型名称和必须完全按照所示键入的文本。
underline
表示语句中省略包含下划线值的子句时应用的默认值。
| (vertical bar)
分隔括在方括号或花括号中的语法项。您只能使用其中一项。
[ ] (brackets)
可选语法项。不要输入括号。
{ } (braces)
必需的语法项。不要输入大括号。
[,...n]
表示前一项可以重复n次。出现次数以逗号分隔。
[...n]
表示前一项可以重复n次。出现的次数用空格分隔。
;
Transact-SQL statement terminator.Although 此版本 SQL Server 中的大多数语句不需要分号,在以后的版本中将需要分号.
<label> ::=
语法块的名称。此约定用于对冗长语法的部分或可在语句中多个位置使用的语法单元进行分组和标记。每个可以使用语法块的位置都用包含在 V 形中的标签表示:.
集合是表达式的集合,例如;列表是集合的集合,例如 .