Tôi có một cái gì đó truy vấn như thế này:Mysql ORDER BY sử dụng dữ liệu ngày hàng
SELECT
title, desc, date
FROM
tablename
ORDER BY
date ASC, title ASC;
trình tốt khi các dữ liệu thực sự có một ngày. Vấn đề là, ngày gửi là tùy chọn, vì vậy đôi khi tôi nhận được 0000-00-00 là ngày có hiệu ứng không may khi đặt tất cả các hàng không được đặt ở trên cùng.
Vì vậy, tôi sau đó cố gắng này:
SELECT
title, desc, date
FROM
tablename
ORDER BY
date DESC, title ASC;
Những loại công trình, nhưng không thực sự - tất cả các mục có số ngày (không 0000-00-00) được liệt kê theo thứ tự giảm dần, tiếp theo là tất cả các mục với 0000-00-00.
Điều tôi muốn làm là đặt hàng theo ngày ASC, tiêu đề ASC, nhưng chỉ khi ngày! = 0000-00-00, nhưng nếu ngày là = 0000-00-00, thì chỉ cần ORDER BY tiêu đề ASC trên (Tôi nghĩ rằng tôi đã giải thích chính xác). Cách duy nhất tôi có thể nghĩ để làm điều này là không dựa trên SQL (hoặc 2 truy vấn, hoặc, mỗi truy vấn chỉ điền một mảng trong bộ nhớ, và sau đó tôi sắp xếp bằng cách sử dụng PHP).
Có truy vấn SQL nào có thể thực hiện việc này không?
MySQL có không hỗ trợ ngày NULL không? –