Mysql表达式从日期desc的数据库顺序中选择所有内容

时间:2014-06-23 11:41:35

标签: php mysql

我有以下数据库来保留工作:

user_job(job_id,job_title,日,月,年)。日,月,年字段包含每个作业的到期日期。日持有价值1。31,月份持有价值1月〜12月和2014年... 2040年。

我想在截止日期DESC中从此表顺序中选择*。知道怎么写我的表达吗?我的意思是我希望在到期日DESC之前找到工作。 这是我尝试但不工作的原因:

<?php

  $get_jobs = mysql_query("select * FROM `user_job` order by `day`, `month`, `year` DESC ");

?>

3 个答案:

答案 0 :(得分:3)

select * FROM `user_job` 
order by `year` desc, 
          case when `month` = 'january' then 1 
               when `month` = 'february' then 2
               when `month` = 'march' then 3
               when `month` = 'april' then 4
               when `month` = 'may' then 5
               when `month` = 'june' then 6
               when `month` = 'july' then 7
               when `month` = 'august' then 8
               when `month` = 'september' then 9
               when `month` = 'october' then 10
               when `month` = 'november' then 11
               when `month` = 'december' then 12
          end desc,
         `day` desc

答案 1 :(得分:0)

尝试类似

的内容
select * FROM `user_job` order by date(concat(`year`,'-',`month` ,'-',`day`)) DESC

答案 2 :(得分:0)

只需使用这个简单的查询。

select * FROM `user_job` order by STR_TO_DATE(concat(`month`,'/',`day`,'/',`year`), '%M/%e/%Y') desc