2013-03-04 3 views
1

Можно ли если у меня есть таблица вроде этого:SQL Сортировка месяца по возрастанию и по месяцам по убыванию?

CREATE TABLE `Fun` (
    `Date` DATETIME NOT NULL PRIMARY KEY 
); 

выполнить запрос SQL, где результаты сортируются так:

2013-03-01 
2013-03-03 
2013-03-04 
2013-02-11 
2013-02-28 
2013-01-21 
2012-12-10 
2012-12-25 
2010-07-08 

Обратите внимание, что в приведенном выше списке, месяцы и годы сортируются в порядке убывания, но дни в каждом месяце сортируются в порядке возрастания?

Спасибо за ваше время.

ответ

8

Воспользуйтесь функцией, MONTH.

SELECT * 
FROM Fun 
ORDER BY YEAR(date) DESC, MONTH(date) DESC, 
     DATE ASC 
+0

Фантастический! Спасибо, JW! –

+0

приветствуется ': D' –