Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/55.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 使用MonthName和Year进行排序_Mysql_Mysql Workbench - Fatal编程技术网

Mysql 使用MonthName和Year进行排序

Mysql 使用MonthName和Year进行排序,mysql,mysql-workbench,Mysql,Mysql Workbench,我有这样一个表结构:- ID Month Year 1 January 2015 2 February 2015 3 March 2014 4 April 2014 5 May

我有这样一个表结构:-

       ID       Month              Year

       1      January               2015
       2      February              2015
       3      March                 2014
       4      April                 2014
       5      May                   2014
       6      June                  2014
       7      July                  2014
       8      August                2014
       9      September             2014
      10      October               2014
      11      November              2014
      12      December              2014
我想用旧年的月份对它进行排序,如果没有输入,则是第一年 本年度的月份,否则要使用本年度的月份进行排序 月份,如果当前年度中存在月份,则为当前年度

预期产出为:-

            Month              Year

           March                 2014
           April                 2014
           May                   2014
           June                  2014
           July                  2014
           August                2014
           September             2014
           October               2014
           November              2014
           December              2014
           January               2015
           February              2015
您可以使用以获得一个值,该值可以根据您的需要进行排序。差不多

SELECT M.*, 
       STR_TO_DATE(CONCAT(M.Month,' ',M.Year),'%M %Y') AS 'myorder'
  FROM yourtable M
ORDER BY myorder ASC;

应该做这项工作。

在查询中尝试此功能可能对您的情况有所帮助

Select STR_TO_DATE(CONCAT(Month,'',Year),'%M %Y') AS 'myorder' from tableName Order By Cutom ASC

从表中选择月、年\u按年份描述、月份ASC命名订单


请提供您的代码。您尝试了什么?我的查询是:-选择月份,IFflag=1,新的年,旧的年作为年份从选择月份开始>=ID作为标志,向往作为新的年,向往作为旧的年,我有两列月份的月份\U统计ID,从月份开始的月份,统计为T;