ユニオンクエリでカウントを行ったことはなく、正しく実行する際に問題が発生しています。
次のクエリを実行しています。
SELECT *
FROM
(
SELECT vg.vertrekluchthaven AS code, count(*) as countv
FROM tbl_vluchtgegevens vg
WHERE vg.vertrekdatum2 <=NOW()
GROUP BY vg.vertrekluchthaven
UNION
SELECT vg.aankomstluchthaven AS code, count(*) as counta
FROM tbl_vluchtgegevens vg
WHERE vg.vertrekdatum2 <=NOW()
GROUP BY vg.aankomstluchthaven
) vg
INNER JOIN tbl_luchthaven lh
ON lh.luchthavenID = vg.code
GROUP BY vg.code
ORDER BY lh.luchthavencode;
最終的に、各ユニオン クエリにある各コードのカウントを取得する方法を見つけようとしています。コードを実行すると、countv のカウントが得られますが、counta はまったく得られません。
これは私が取得しようとしているものです:
+-------+-----------+-----------+-----------+
| CODE | Name | count v | count a |
+-------+-----------+-----------+-----------+
| AMS | LONG NAME | 5 | 8 |
| MSP | LONG NAME | 5 | 2 |
| WAS | LONG NAME | 2 | 0 |
+-------+-----------+-----------+-----------+