0
私はこの単一のクエリを持っています。返されたカラムscenario
ためMysql SELECT UNIONが間違った結果を返しましたか?
$sql = "SELECT * FROM `my_table` WHERE type!='' AND (page_option='0' OR page_option='1') ORDER BY type ASC";
最初の3つの結果はa1
、d3
、e1
あります。今
私はすべての他の同一のテーブルとUNION操作を行います。my_table
の結果と最初の3つのカラムを通して
$sql = "SELECT * FROM `my_table`
WHERE type!='' AND (page_option='0' OR page_option='1')
UNION ALL
SELECT * FROM `my_table_2`
WHERE type!='' AND (page_option='0' OR page_option='1')
UNION ALL
SELECT * FROM `my_table_3`
WHERE type!='' AND (page_option='0' OR page_option='1')
ORDER BY type ASC";
Iループはe1
、e1
、e1
です。
各テーブルには、type
という名前の列があり、結果が出るテーブルを識別します。だから、ユニオンクエリ結果のために、私はmy_table
if($type=="my_table") {
echo $scenario;
}
からのみのシナリオを表示するように条件を追加したシナリオは、単一のクエリと同じでなければなりませんが、そうではありません。
どうすれば解決できますか?
いくつかのサンプルデータを期待される出力と実際の出力と共有できますか? –
私はそうしました、単一のクエリの最初の3つの結果は、ユニオンクエリの最初の3つの結果と同一でなければなりませんが、そうではありません。 – mdnba50
各テーブルのエイリアスを「SELECT t1。* FROM my_table as t1'」と同じデータにすることができます。 –