我有一张桌子,想获取记录,例如1月至3月(2019),4月至6月(2018)等
SELECT GROUP_CONCAT(month,' to ',month,' (',year,')') AS quater_list
FROM month_year GROUP BY month;
预计应该是1月至3月(2019),4月至6月(2018)...等等
答案 0 :(得分:1)
这是您要查找的查询
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'
MONTHNAME-返回日期月份的全名。名称使用的语言由lc_time_names系统变量(Section 10.15, “MySQL Server Locale Support”)的值控制。
QUARTER-返回日期的季度,范围为1到4。
语法:
mysql> SELECT QUARTER('2008-04-01');
-> 2