我可以使选定的记录出现在排序查询的开头:
$sql = "SELECT meetID, meetingTitle
FROM meetings
ORDER BY meetingTitle = 'Other Meetings' DESC, meetingTitle DESC";
这迫使“其他会议”位于字母数组输出的顶部。我希望它在底部。然后我可以使用 array_reverse 将它放在输出数组的末尾,但我正在寻找一种直接使用 MySQL 查询的方法。那可能吗?
我可以使选定的记录出现在排序查询的开头:
$sql = "SELECT meetID, meetingTitle
FROM meetings
ORDER BY meetingTitle = 'Other Meetings' DESC, meetingTitle DESC";
这迫使“其他会议”位于字母数组输出的顶部。我希望它在底部。然后我可以使用 array_reverse 将它放在输出数组的末尾,但我正在寻找一种直接使用 MySQL 查询的方法。那可能吗?
更改ASC
为DESC
:
$sql = "SELECT meetID, meetingTitle
FROM meetings
ORDER BY meetingTitle = 'Other Meetings' ASC, meetingTitle DESC";
的值meetingTitle = 'Other Meetings'
适用1
于其他值。因此,如果您首先要其他值,则要领先于,这就是 ASCending 顺序。Other Meetings
0
0
1
SELECT meetID, meetingTitle FROM meetings
ORDER BY
CASE WHEN meetingTitle = 'Other Meetings' THEN 2 ELSE 1 END, meetingTitle DESC