0

このクロス結合は正常に機能します。

select * from x, y

このクエリを実行しようとしています:

select abc.col1 from abc
(select * from x, y) abc

しかし、次のエラー メッセージが表示されます。

Msg 8156, Level 16, State 1, Line 2
The column 'col1' was specified multiple times for 'abc'.

テーブル x と y の両方に同じ列と列定義があります。

アイデア/提案はありますか?

4

3 に答える 3

2
select abc.col1 from abc
(select * from x, y) abc

同じ名前の 2 つのテーブルにエイリアスを設定しています。試す:

select abc.col1 from abc,
(select x.* from x, y) abc2
于 2013-11-06T03:10:25.670 に答える
0

ロックの答えに加えて、カンマも忘れました:

select 
    abc.col1 
from abc, (select * from x, y) abc2

ansi 1992 表記を使用すると、さらに良い結果が得られます。

select 
    abc.col1 
from abc CROSS JOIN (select * from x, y) abc2
于 2013-11-06T03:12:17.733 に答える