Tôi có một trật tự quy định tại khoản trông giống như:Sử dụng biểu thức boolean để quy định tại khoản
(user_id <> ?), rating DESC, title
ở đâu? được thay thế bằng id của người dùng hiện tại.
Ngày postgresql điều này mang lại cho tôi thứ tự tôi đang tìm kiếm tức là bởi người dùng hiện tại, sau đó xếp hạng cao nhất, sau đó là tiêu đề (theo thứ tự bảng chữ cái).
Tuy nhiên trên MySQL, tôi nhận được một người dùng hiện tại không rõ ràng không phải là lần đầu tiên cũng không phải là cuối cùng, cũng không phải theo xếp hạng hoặc tiêu đề.
Là lựa chọn duy nhất của tôi về khả năng tương thích cơ sở dữ liệu chéo để thay thế biểu thức boolean nhanh và dơ bẩn này bằng TRƯỜNG HỢP KHI NÀO .. THÌ .. ELSE .. END statement?
Chỉnh sửa: Cảm ơn tất cả vì sự trợ giúp, nó được chỉ ra một cách chính xác bởi Chaos và Chad Birch trong trường hợp vấn đề nằm ở nơi khác (cụ thể là tôi đang sử dụng kết quả của truy vấn trên làm đầu vào tiếp theo) sau đó hành động ngạc nhiên rằng thứ tự đầu tiên bị mất;)
Điều này sẽ hoạt động tốt, tôi sẽ tìm một vấn đề khác có thể gây ra sự cố. Thêm "(user_id <>?)" Vào mệnh đề SELECT nếu bạn muốn xác nhận rằng nó đưa ra các giá trị đúng (phải là 0 cho người dùng hiện tại, 1 khác) –