У меня есть таблица, и я хочу получить запись с января по март (2019 г.), с апреля по июнь (2018 г.) и т. д.
SELECT GROUP_CONCAT(month,' to ',month,' (',year,')') AS quater_list
FROM month_year GROUP BY month;
ожидать, что должно быть с января по март (2019 г.), с апреля по июнь (2018 г.)... и т. д.
посмотрите структуру таблицы, которую я имею, я хочу получить результат из этой таблицы
@boy108zonboy108zon Пожалуйста, проверьте мой ответ один раз.






Вот запрос, который вы ищете
SELECT CONCAT(MONTHNAME(STR_TO_DATE(MIN(number1), '%m')),' to ',MONTHNAME(STR_TO_DATE(MAX(number1), '%m')),' (',MAX(YEAR),')') temp,
CONCAT(YEAR,'-',number1,'-','01') temp1,
QUARTER(CONCAT(YEAR,'-',number1,'-','01')) qtr
FROM new_table
GROUP BY qtr
STR_TO_DATE — это функция, обратная функции DATE_FORMAT(). Он принимает строку str и строку формата.
Синтаксис
mysql> SELECT STR_TO_DATE('01,5,2013','%d,%m,%Y');
-> '2013-05-01'
НАЗВАНИЕ МЕСЯЦА — возвращает полное название месяца для даты. Язык, используемый для имени, управляется значением системной переменной lc_time_names (Раздел 10.15, «Поддержка локали сервера MySQL»).
ЧЕТВЕРТЬ — возвращает квартал года для даты в диапазоне от 1 до 4.
Синтаксис:
mysql> SELECT QUARTER('2008-04-01');
-> 2
Спасибо за ваше ценное объяснение
возможно, вы сможете обмануть, используя функцию
quarter()изmySQLdev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html