2010-09-16 5 views
0

Я хочу получить последние 10 уникальных месяцев, в которых были события, хранящиеся как event_date в качестве даты mysql. Я использую coldfusion, поэтому могу сгруппировать результат, но не могу получить работу, как мне хотелось бы.mysql - получение последних 10 уникальных месяцев

Это то, что у меня есть до сих пор.

SELECT MONTH(event_date) AS month, YEAR(event_date) AS year, event_date from events 

так идеально, если не было никаких сообщений в августе не будет выводиться как

сентября 2010 июля 2010 июня 2010 может

и т.д. и т.п.

Спасибо.

Р.

+2

Я на самом деле не в холодный синтез - и, возможно, я просто не получить то, что вы хотите, но с точки зрения туздо: вы не можете просто использовать SELECT DISTINCT плюс некоторый LIMIT? –

+4

@ ran2 - Вы должны ответить на этот вопрос. @Ross Я думаю, что это то, что нужно? 'SELECT DISTINCT MONTH (event_date) AS month, YEAR (event_date) AS год с событий ORDER BY year DESC, month DESC LIMIT 10;' –

+0

+1 @Martin Smith избил меня до этого;) Ключ должен опустить «event_date», столбца из ваших результатов, поэтому вы получаете только отдельные значения месяца и года. Кстати: вы можете использовать разные имена, если они зарезервированы. – Leigh

ответ

2
SELECT DISTINCT MONTH(event_date) AS month, YEAR(event_date) AS year from events ORDER BY year DESC, month DESC LIMIT 10; 
+0

Да, это был ответ, который был дополнительным событием в предложении SELECT. Большое спасибо – Roscoeh

Смежные вопросы