MySQL双重命令

时间:2011-09-28 16:48:18

标签: php mysql sql sql-order-by

有没有更好的方式来写

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 个答案:

答案 0 :(得分:2)

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

答案 1 :(得分:0)

只需添加性别:

ORDER BY users.last_activity DESC, users.gender

请注意,只有当两个用户具有相同的gender值时,才会按第二个排序(在这种情况下为last_activity)。将其视为“打破平局”的订单。