20

私が達成しようとしているのは、いくつかのサブクエリで構成される 1 つの複雑なクエリを作成することです。アイデアは、レポート データを取得するために週単位で実行するビジネス担当者に提供することです。

効果は、多くのテーブルのすべてのデータが 1 つの結果に表示される以下のクエリに似ています。

select * from table1, table2, table3

だから私は何かが必要ですが、うまくいきません。

select 
    (select * from   table1 where ...... ) as table1,
    (select * from   table2 where....... ) as table2

手動でサブクエリを個別に実行し、その結果を 1 つの大きな Excel シートに手動で追加できます。しかし、私はビジネスパーソンがこれをより簡単に行えるようにし、エラーを最小限に抑えたいと考えています.

これは MySQL で可能ですか?

その理由は、従来の Oracle PIVOT SQL ステートメントを MySQL と同等のものに変換していて、サブクエリがかなり複雑だからです。

必要に応じて、Oracle SQL を提供できます。

いつものように感謝します。

4

3 に答える 3

31

いくつかいじった後:

select * from
    (select * from   table1 where survey_user_id=4 ) as T1
    ,
    (select * from   table2 where survey_field_type_id=100 ) as T2
    ,
    (select * from table3  )  as T3
于 2013-03-06T21:04:38.477 に答える
12

私があなたを正しく理解しているなら、UNIONだけが必要です:D

(SELECT column1 AS name1, column2 AS name2 FROM table1 WHERE ...... )
UNION
(SELECT column3 AS name1, column4 AS name2 FROM table2 WHERE ...... )
UNION
....

以下のコメントで述べたように、列は同じ名前 (エイリアスを使用できます) で、同じ順序である必要があります。

于 2013-03-06T21:05:49.837 に答える