3
刚刚发现,当您使用AS
关键字别名子查询Oracle不喜欢它:甲骨文AS关键字和子查询
SELECT * FROM (SELECT * FROM products) AS p
我需要让我的SQL查询,尽可能实现可移植性。在上述查询中删除AS
关键字是否会影响任何其他RDBMS?
刚刚发现,当您使用AS
关键字别名子查询Oracle不喜欢它:甲骨文AS关键字和子查询
SELECT * FROM (SELECT * FROM products) AS p
我需要让我的SQL查询,尽可能实现可移植性。在上述查询中删除AS
关键字是否会影响任何其他RDBMS?
为SQL 99 ANSI模式是表可以有一个别名WITHOUT的AS
关键字的话,你可以拿出AS
,它应该在每一个RDBMS工作。看到它在小提琴:
在ISO/IEC 9075-2:1999,部分7.6 <表参考>,PA GE 232:
<table reference> ::=
<table primary>
| <joined table>
<table primary> ::=
<table or query name> [ [ AS ] <correlation name>
[ <left paren> <derived column list> <right paren> ] ]
| <derived table> [ AS ] <correlation name>
[ <left paren> <derived column list> <right paren> ]
| <lateral derived table> [ AS ] <correlation name>
[ <left paren> <derived column list> <right paren> ]
| <collection derived table> [ AS ] <correlation name>
[ <left paren> <derived column list> <right paren> ]
| <only spec>
[ [ AS ] <correlation name>
[ <left paren> <derived column list> <right paren> ] ]
| <left paren> <joined table> <right paren>
也确认工作:
我知道的MySQL需要一个别名,我的问题是关于实际使用情况的' AS'关键字。 –
@MaxToro我已经更新了我的答案。 –
谢谢。来自您所指标准的链接或报价将非常有价值。 –