0
我有一個查詢:PHP MySQL的ORDER BY無法按照預期工作
$team_member_result = mysql_query("SELECT * FROM teams
WHERE team_creator LIKE '%,$player_main_id,%'
OR team_owner LIKE '%,$player_main_id,%'
OR team_leaders LIKE '%,$player_main_id,%'
OR team_captains LIKE '%,$player_main_id,%'
OR team_members LIKE '%,$player_main_id,%'
ORDER BY team_creator ASC, team_owner ASC,
team_leaders ASC, team_captains ASC,
team_members ASC");
它工作在開始,但如果成員不是一個創造者,它開始排序無序的,所以基本上如果他們是一個成員它會在他們成爲領導者之前展現出來。
不確定該怎麼辦,
謝謝!
在每個'LIKE'中有兩件事你有開始和結尾','我認爲這是不正確的。第二個你想要的第一個條件首先在'ORDER BY'子句 –
樣本數據會有幫助。看起來你使用set數據類型在字段中存儲多個值,在這種情況下,特殊的[set functions(比如find_in_set)](http://dev.mysql.com/doc/refman/5.7/en/ set.html)可能會有所幫助 – xQbert