2015-06-17 4 views
0

У меня есть два поля даты. необходимо вытащить данные на основе этих двух полей даты и отобразить их в ежемесячном порядке (в словах), таком как JAN, FEB ... в MySQL.Показать данные из двух полей даты, упорядоченных по названию месяца

В настоящее время мой запрос является:

SELECT `firstname` , `gender` , MONTH(`dol`) AS 'month' FROM `student_details` 
WHERE `doa` = '2015-03-01' AND `dol` = '2015-06-17' 

, но этот запрос не работает.

Мне нужно это, чтобы отобразить записи, основанные на месяцах в словах.

ответ

0

Я думаю, что это SQL полезно для вас.

SELECT `firstname` , `gender` , MONTHNAME(`dol`) AS 'month' FROM `student_details` 
WHERE `doa` = '2015-03-01' AND `dol` = '2015-06-17' 

Ниже SQL дается точный результат, я думаю.

SELECT `firstname` , `gender` , SUBSTRING(MONTHNAME(`dol`),1,3) AS 'month' FROM `student_details` 
WHERE `doa` = '2015-03-01' AND `dol` = '2015-06-17' 

Между датой эти данные будут полезны для вас.

SELECT `firstname` , `gender` , SUBSTRING(MONTHNAME(`dol`),1,3) AS 'month' FROM `student_details` 
WHERE `doa` BETWEEN '2015-03-01' AND DATE_ADD('2015-06-30' , INTERVAL 1 DAY) 

спасибо.

+0

Мне нужны все данные на основе диапазона от 2015 -03-01 до 2015-06-17, теперь я получаю только данные 'dol' = '2015-06-17' и вам нужно заказывать по месяцам? – Acube

+0

Мне это нужно как все данные из данных между полем doa = 2015-01-01 до dol = 2015-06-30, а не как вы упомянули выше – Acube

+0

Я обновил свой ответ, пожалуйста, проверьте его. –

1

Пожалуйста, проверьте ниже:

SELECT `firstname` , `gender` , DATE_FORMAT(`dol`,'%b') AS 'month' FROM `student_details` 
WHERE `doa` = '2015-03-01' AND `dol` = '2015-06-17' 
+0

Спасибо, но этот запрос возвращает значение только для dol = 2015-06-17, мне нужны данные с даты doa до даты dol – Acube

+0

Пожалуйста, обратитесь к моему обновленному запросу. Надеюсь, это тебе помогло. – AnkiiG

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