sql - SQL 标准是否允许函数名和括号之间有空格

标签 sql standards standards-compliance

检查几个 RDBMS 我发现像

SELECT COUNT (a), SUM (b)  
FROM TABLE

允许(注意聚合函数和括号之间的空间)。

任何人都可以提供一个指向 SQL 标准本身定义的指针(任何版本都可以)?

编辑:
以上在postgres中有效,mysql需要set sql_mode = "IGNORE_SPACE";如定义 here (有关受此服务器模式影响的完整功能列表,请参见 this 引用)。
MS SQL据报接受上述。

此外,似乎答案最有可能在 standard 中。 .我可以关注 BNF关于常规符号和术语,但是当涉及到选择的那部分中的空格和分隔符的定义时,我迷路了。

最佳答案

是的; token 之间的空白基本上被忽略了。唯一的异常(exception)是,正式地,相邻的字符串文字串联 - 但标准比任何实现都更奇怪。

见:http://savage.net.au/SQL/

关于sql - SQL 标准是否允许函数名和括号之间有空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2501704/

相关文章:

sql - 我该如何编写这个该死的 SQL 查询?

c++ - 使用空类类型对象的内存

c - 在 C 语言中 if(x) 到底解析成什么?

c++ - 有没有一种简单的方法可以根据标准的命名要求测试您的代码?

c++ - 指向成员的指针可以绕过成员的访问级别吗?

mysql - 连接mysql上的两个表

Mysql:如何用同一表中另一行的值填充一行中的空值?

c# - 创建成员(member)用户时出错 "The password-answer supplied is invalid"

globalization - 为什么对双向文本(希伯来语、阿拉伯语)的软件支持如此之差?

html - 当您必须支持 IE6 时,是否可以使用符合 W3C 标准的代码?w3