どうですか:
SELECT * FROM TRIPS LEFT JOIN CHECKINS
USING (MemberID) ORDER BY CheckInDateEntered ASC;
( http://sqlfiddle.com/#!2/7f6055/3 )
複数のフィールドをコンマで区切って、優先度順に並べることもできます。
SELECT * FROM TRIPS LEFT JOIN CHECKINS USING (MemberID)
ORDER BY VenueCreatedAt,TripDateStarted,TripDateEnded ASC;
( http://sqlfiddle.com/#!2/7f6055/10 )
それでもうまくいかない場合は、LEAST関数を確認してください。
SELECT * FROM TRIPS LEFT JOIN CHECKINS USING (MemberID)
ORDER BY LEAST(VenueCreatedAt,TripDateStarted,TripDateEnded) ASC;
( http://sqlfiddle.com/#!2/7f6055/15 )
ただし、これは最も古い日付の 1 つの列でのみ並べ替えられることに注意してください。各行 (交互の列) の最小値で並べ替えたい場合は、次の 3 つの他の質問のいずれかが役立つ場合があります。
3 つの異なる列の最大値で並べ替える
PHP/MySQL を使用して複数の列から最小値を選択する
ORDER BY または PHP ソート関数を使用した MySQL クエリのソート
(それらはすべて、特定の列セットの各行の最小値または最大値による並べ替えに関するものです)