我怎样才能按顺序使用mysql更大的日期?

时间:2013-11-03 00:57:48

标签: mysql sql

我想首先显示订阅尚未结束的用户,然后显示其他没有subs_end_datetime的用户。我已尝试使用以下sql但没有返回任何内容。

 $sql = "select * from users order by case when subs_end_datetime <= CURRENT_DATE()  then 0 else 1, id";

2 个答案:

答案 0 :(得分:1)

你在找这样的东西吗?

SELECT *
  FROM users
 ORDER BY (COALESCE(subs_end_datetime, 0) <= CURDATE()), id

这是 SQLFiddle 演示


根据您的评论

SELECT *, subs_end_datetime <= CURDATE() aa
  FROM users
 ORDER BY (COALESCE(subs_end_datetime, 0) <= CURDATE()), subs_end_datetime DESC

这是 SQLFiddle 演示

答案 1 :(得分:1)

这样我们就会显示订阅尚未结束的用户。我们在查询中使用>= <= {}} {}} {}

null

示例: http://sqlfiddle.com/#!2/a255c/18