MySQL Double Order - PullRequest
       26

MySQL Double Order

0 голосов
/ 28 сентября 2011

Есть ли лучший способ написать

SELECT users.id FROM `users`,`profiles` WHERE users.id = profiles.id && 
profiles.zipcode = '$zipcode' && users.id != '1' && users.id != '2'
&& profiles.picture != '' ORDER BY users.last_activity DESC LIMIT 0,11

(Приведенный выше код предполагает найти всех пользователей с определенным почтовым индексом и упорядочить их по отметке времени last_activity)

Также, есть ли способ отсортировать его по last_activity и полу?

Ответы [ 2 ]

2 голосов
/ 28 сентября 2011
SELECT users.id 
FROM `users`
JOIN `profiles` ON users.id = profiles.id 
WHERE profiles.zipcode = '$zipcode' 
  AND users.id NOT IN (1,2)
  AND profiles.picture != '' 
ORDER BY users.last_activity DESC, users.gender 
LIMIT 0,11
0 голосов
/ 28 сентября 2011

Просто добавьте пол:

ORDER BY users.last_activity DESC, users.gender

Обратите внимание, что упорядочение по второму (в данном случае gender) произойдет, только если два пользователя имеют одинаковое значение last_activity. Считайте, что вы заказываете тай-брейк

...