0

同じサーバーに 2 つの DB があります。DBごとに2つの単純な選択クエリがあり、正しく機能します。ただし、結合に結合すると失敗します。これを修正したい。

疑似コード -

select *
from (select columns from DB1) as D1
inner join 
select *
from (select columns from DB2 where some valid condition) as D2
on D1.column1 = D2.column1

エラー -

Incorrect syntax near the keyword 'SELECT'. (ie second "outer" select)
Incorrect syntax near the keyword 'on'.
4

2 に答える 2

1

なんてこった - 私がしなければならなかったのはこれだけだった -

select *
from (select columns from DB1) as D1
inner join 
--select *
--from 
(select columns from DB2 where some valid condition) as D2
on D1.column1 = D2.column1

コメント行を参照してください。それらを削除すると、動作するはずです。

D2 から選択された列を含めるには、D2 列を最上位の select ステートメントに入れることに注意してください。

select col1b, col2c
from (select col1a, col1b from DB1) as D1
inner join 
--select *
--from 
(select col2a, col2b, col2c from DB2 where some valid condition) as D2
on D1.col1a = D2.col2a

これにより、col1b と col2c が表示されます。

于 2013-10-15T21:14:10.807 に答える
0
select *
from DataBaseName.ShemaName.TableName1 D1 inner join  DataBaseName.ShemaName.TableName2 D2
on D1.column1 = D2.column1
WHERE Somecondition
于 2013-10-15T20:47:08.933 に答える