2011-10-27 16 views
5

Xin chào các bạn thân mến.Làm thế nào để chọn ORDER BY cột và RAND() cả hai?

mysql_query("SELECT id FROM tb_table ORDER BY num ASC, ORDER BY RAND() LIMIT 1"); 

mã này có đúng không? Tôi muốn tìm tất cả các hàng ASC num và có thể có 1000 hàng num đó là 1 1000 khác num là 2. Nhưng tôi muốn nó sắp xếp ASC như 1s trước hết và chọn một trong số chúng một cách ngẫu nhiên.

Trả lời

9

Bạn chỉ cần chỉ định ORDER BY một lần.

mysql_query("SELECT id FROM tb_table ORDER BY num ASC, RAND() LIMIT 1"); 
+1

SQL này có hiệu quả không? Hoặc không giới thiệu RAND() làm cho nó chậm hơn nhiều? – zed

Các vấn đề liên quan