給定兩個表:PHP第一次分揀非空組的列表,然後空組
item_to_group ---> contain item_id , user_to_group_id
user_to_group ---> contain user_to_group_id , user_id, // other not relevant columns like group name...
這裏我的MySQL代碼:
SELECT *,
(SELECT COUNT(*) FROM item_to_group x
WHERE x.user_to_group_id = u.user_to_group_id) as tots
FROM user_to_group u
WHERE u.user_id = // [ USERID HERE ]
ORDER BY u.user_to_group_id DESC, tots DESC
我想展示組的列表,在頂部我有他們的項目組,然後是空組。
想象一下這些羣體,比如電子商務中物品的願望清單。作爲一個用戶,我可以建立多個組。
例如。 我目前顯示
group 99 contains 2 items
group 98 contains 0 items // <--- empty
group 97 contains 5 items
group 96 contains 1 items
group 94 contains 0 items // <--- empty
group 93 contains 9 items
group 92 contains 3 items
,但我想顯示
group 99 contains 2 items
group 97 contains 5 items
group 96 contains 1 items
group 93 contains 9 items
group 92 contains 3 items
-------------------------
group 98 contains 0 items
group 94 contains 0 items
所以我想顯示非空第一組,按時間順序(我不存儲時間戳但集團編號應該足夠我猜)然後所有剩下的空組。
這裏的問題是,如果我按id排序,那麼totsi不會得到我想要的結果。 我希望我很清楚。
你可以添加一個樣本輸出?我不清楚你想要什麼排序。爲什麼你會先按id排序? *按時間順序*適合於哪裏? – LSerni
@ lserni ok我加了個例子,謝謝 – Francesco