2016-03-02 2 views
0

Я пытаюсь настроить выбор, который извлекает все данные из таблицы, за исключением данных с текущего месяца.SQL - каждый месяц, кроме текущего месяца

select COUNT(INCIDENT_ID), 
DATE_FORMAT(CREATE_DATE,'%m-%Y') AS formatted_date 
from incident_view 
where (create_year = YEAR(CURDATE()) or create_year = YEAR(CURDATE())-1) 
AND CREATE_DATE NOT (create_month = MONTH(NOW()) 
AND CUSTOMER_COMPANY_NAME = "Company" 

GROUP BY formatted_date 

ORDER BY 
YEAR(CREATE_DATE), MONTH(CREATE_DATE) 

Поблагодарили бы за любую помощь.

Приветствие

+0

почему и/нет, если 'месяц (create_date) <> месяц (cur_date())' будет делать? –

ответ

0

Вы можете использовать DATE_FORMAT функции для форматирования и сравнения месяца (и года). Обновленный внешний вид запроса, как показано ниже (не проверял, хотя еще):

SELECT COUNT(INCIDENT_ID), 
DATE_FORMAT(CREATE_DATE,'%m-%Y') AS formatted_date 
from incident_view 
where (create_year = YEAR(CURDATE()) or create_year = YEAR(CURDATE())-1) 
AND DATE_FORMAT(CREATE_DATE ,'%Y%m') <> DATE_FORMAT(now() ,'%Y%m') 
AND CUSTOMER_COMPANY_NAME = "Company" 

GROUP BY formatted_date 

ORDER BY 
YEAR(CREATE_DATE), MONTH(CREATE_DATE) 
+0

Привет, спасибо. Он работает =) –

+0

Что означает «<>»? –

+0

<> us Синтаксис MySql для 'не равно'. Если он работает нормально, я был бы признателен, если бы вы приняли ответ как правильный. –

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