chuỗi truy vấn của tôi là như sau:Làm thế nào để tạo kết quả truy vấn MYSQL ORDER BY điều kiện đặt hàng?
SELECT ... FROM maintable
LEFT JOIN table1 on (maintable.id = table1.idx)
LEFT JOIN table2 on (table1.idy = table2.idy)
LEFT JOIN table3 on (table2.idz = table3.idz)
WHERE (condition1 OR condition2 OR condition3)
AND maintable.status = static
//condition1 & condition2 & condition3 are kind of
table3.idz = 101, table3.idz = 3, maintable.id IN (1,2,3,4), and so on
Đối với kết quả tôi muốn mục mà đáp ứng condition1
để được trả lại đầu tiên, sau đó mục mà đáp ứng condition2
, và cuối cùng mục mà đáp ứng condition3
. Ý tưởng nào?
Các điều kiện của bạn có khác biệt không? Nếu không, nếu một mục nhập đáp ứng nhiều điều kiện thì sao? Ví dụ: nếu mục nhập đáp ứng các điều kiện 1 và 3, thì mục nhập đó phải được sắp xếp như thế nào so với mục nhập đáp ứng các điều kiện 1 và 2? –
không có giới hạn ở đây, vì vậy tôi nghĩ rằng có lẽ đầu tiên đáp ứng trở lại đầu tiên? – Edward