SQL クエリが有効かどうか。私はインタビューでこれを尋ねられましたか?
質問する
21444 次
3 に答える
5
これは有効なクエリです。2 つのテーブルのデカルト積が生成されます。これは、ANSI SQL 構文の次のクエリと同等です。
select *
from table1
join table2 on 1=1
ただし、このクエリの有用性については非常に議論の余地があります。
これはSQLFiddleのデモです。
于 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 に答える