首頁 > 後端開發 > php教程 > sql?where

sql?where

WBOY
發布: 2016-06-20 12:43:43
原創
1024 人瀏覽過

根据当前时间来显示活动事件,越靠近当前时间的显示在最前面
1.当前时间为 2015-11-25,则显示顺序
2015-11-25,    2015-11-26,    2015-12-27,   2015-01-20,     2014-11-24
2.当前时间为 2015-12-01,则显示顺序
2015-12-27,    2015-11-25,    2015-11-26,    2015-01-20,     2014-11-24
3.当前时间为 2015-12-30,则显示顺序
2015-12-27,    2015-11-25,    2015-11-26,     2015-01-20,    2014-11-24

这个where语句要怎么写


回复讨论(解决方案)

这年头伸手党真多,拿去玩吧

SELECT * from 表名 where event_start_date<CURDATE() order by event_start_date desc;
登入後複製
登入後複製
登入後複製

2.当前时间为 2015-12-01,则显示顺序
2015-12-27, 2015-11-25, 2015-11-26, 2015-01-20, 2014-11-24

2015-12-27 距 2015-12-01 26天
2015-11-25 距 2015-12-01 5天
为何 2015-12-27 要排在前面?
不是与 越靠近当前时间的显示在最前面 的条件相佐吗

2.当前时间为 2015-12-01,则显示顺序
2015-12-27, 2015-11-25, 2015-11-26, 2015-01-20, 2014-11-24

2015-12-27 距 2015-12-01 26天
2015-11-25 距 2015-12-01 5天
为何 2015-12-27 要排在前面?
不是与 越靠近当前时间的显示在最前面 的条件相佐吗



当前时间为 2015-12-01时,活动2015-11-25已过去
应该说成:越靠近当前时间的显示在最前面 并且开始日期>=当前日期

这年头伸手党真多,拿去玩吧

SELECT * from 表名 where event_start_date<CURDATE() order by event_start_date desc;
登入後複製
登入後複製
登入後複製



[code=sql]SELECT * from 表名 where event_start_date<CURDATE() order by event_start_date desc;
只显示了<当前日期的,怎么和 >当前日期的拼成一个sql


这年头伸手党真多,拿去玩吧

SELECT * from 表名 where event_start_date<CURDATE() order by event_start_date desc;
登入後複製
登入後複製
登入後複製



[code=sql]SELECT * from 表名 where event_start_date只显示了当前日期的拼成一个sql

不怕速度慢就用union吧
相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板