Sql 查询是否有效。我在采访中被问到这个问题?
问问题
21444 次
3 回答
5
这是一个有效的查询 - 它产生两个表的笛卡尔积。它等效于 ANSI SQL 语法中的此查询:
select *
from table1
join table2 on 1=1
不过,这个查询的有用性是值得商榷的。
于 2013-01-18T02:40:30.423 回答
2
好吧,您编写的查询不是有效的查询:
Select *
from table 1, table 2
不允许使用数字作为表别名。在许多数据库中,您可以执行以下操作:
select *
from table "1", table "2"
如果你想要数字别名。
如果您不打算在“1”和“2”之前使用空格,则查询等效于:
select *
from table1 cross join table2
完全有效,但cross join
语法更可取。
于 2013-01-18T02:57:42.333 回答
0
这取决于您使用的数据库。
长期以来,它一直是有效的 SQL,但例如一些最新版本的 SQL Server 正在放弃语法以支持使用join
关键字。
于 2013-01-18T02:44:40.963 回答