我具有用戶表(主表)和在線表格(refrence表與用戶一對一的關係)象下面這樣: 我用左連接表上 如何使用左邊的加入命令?
我通過運用令「is_logged」場(ASC) 我在訂單中得到了記錄,但是所有記錄都是首先出現在ONLINE表中的。 我想要所有的用戶表順序記錄,但這些記錄應該是最後一個不存在於在線表中的
我具有用戶表(主表)和在線表格(refrence表與用戶一對一的關係)象下面這樣: 我用左連接表上 如何使用左邊的加入命令?
我通過運用令「is_logged」場(ASC) 我在訂單中得到了記錄,但是所有記錄都是首先出現在ONLINE表中的。 我想要所有的用戶表順序記錄,但這些記錄應該是最後一個不存在於在線表中的
看看這個。
SELECT o.*
FROM users u
LEFT JOIN online
o ON u.id = o.user_id
ORDER BY COALESCE(is_logged, -1) DESC, user_id ASC
當它爲空時,給它一個大於0的值和1。
SELECT
u.*, IFNULL(o.is_logged, 99) as is_logged
FROM
user u
LEFT JOIN online o ON u.id = o.user_id
ORDER BY is_logged ASC
感謝Xdazz,這對我來說是有用的。 – vin 2012-08-09 17:54:29
謝謝John Totet Woo,那對我很合適 – vin 2012-08-09 17:54:53
youare歡迎vin :) – 2012-08-09 22:05:34