0

TableA と TableB の 2 つのテーブルがあります。where 条件に基づいて、TableA からカウント値を 1 つ選択する必要があります。TableB から 2 つの値を選択する必要があります。1 つの結果セットにすべての値が必要です。結果セットに複数の行が存在することはありません。

これが私が今持っているものです:

SELECT count(id) FROM TableA WHERE ($some_where_statement) SELECT owner, owner_ID from TableB

これは簡単なはずですが、これはエラーをスローしています。助言がありますか?

4

1 に答える 1

1

クロス結合して、関連のない 2 つのテーブルの行を結合できます。

SELECT T1.cnt, T2.owner, T2.owner_ID
FROM (SELECT count(id) FROM TableA WHERE ($some_where_statement)) AS T1
CROSS JOIN (SELECT owner, owner_ID from TableB) AS T2

結果セットに 1 行のみを含めるには、両方のサブクエリが 1 行のみを返すと想定されます。これは、2 番目のサブクエリには当てはまらないと思います。おそらくwhere句がありません。

于 2010-02-23T16:21:52.923 に答える