同じデータがたくさんある 2 つのテーブルがあります (2 つの言語での名刺の製造に適用されます)。
私はJOIN
(私が知る限り、FULL OUTER結合をエミュレートし、LEFT UNION RIGHT JOINを実行しています)、簡単にコピーできるようにデータを並べて表示します。
table a has data in language1
table b has data in language2
すべての人が language1 と language2 の両方のデータを持っているわけではないので、language1 または language2 だけを持っています。
私はそのようなクエリを行います:
SELECT
<long list of selected rows from table a and table b as afiled,bfield>
FROM tablelanguage1 a
LEFT JOIN tablelanguage2 b
ON a.email=b.email
UNION
SELECT<long list of selected rows from table a and table b as afiled,bfield>
FROM tablelanguage1 a
RIGHT JOIN tablelanguage2 b
ON b.email = a.email
ORDER BY adatetime DESC, bdatetime DESC
これは必要なものをすべて表示しますが、並べ替えに問題がありlanguage2-only entries correctly
ます。言語 2 のみ (テーブル b) のエントリは、日付が一部のlanguage1+language2
またはlanguage1-only
エントリよりも遅い場合でも、常に最後になります。
ORDER BY
その状況で正しくコーディングする方法について何か提案はありますか? どうもありがとう!