首頁 >後端開發 >php教程 >关于发布时间和更新时间的排序SQL语句,怎么写

关于发布时间和更新时间的排序SQL语句,怎么写

WBOY
WBOY原創
2016-06-06 20:44:421296瀏覽

有两个排序字段,
更新时间: upTime
发布时间: addTime

文章发布后会有它的发布时间,如果修改文章会保存一个修改时间。
在首页取数据,跟据如下规则排序:
1、有更新时间的文章使用upTime,只有发布时间的使用addTime,进行除序排列

<code>//这样取出的数据是不合要求的
select * from table order by upTime desc, addTime desc    
</code>

回复内容:

有两个排序字段,
更新时间: upTime
发布时间: addTime

文章发布后会有它的发布时间,如果修改文章会保存一个修改时间。
在首页取数据,跟据如下规则排序:
1、有更新时间的文章使用upTime,只有发布时间的使用addTime,进行除序排列

<code>//这样取出的数据是不合要求的
select * from table order by upTime desc, addTime desc    
</code>

select * from table order by order by case when upTime is null then addTime desc else upTime desc end

大概你的思路有点问题?反正我看的是晕乎乎的。
文章第一次发布的时候,同时给定addTimeupTime不就好了么?取数据的话只要用upTime进行排序就好了,因为不存在没有upTime的情况啦,没有upTime的情况下upTime就等于addTime啦。

没有更新过的让upTime = addTime

不能容忍的话加一个用于排序的字段

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn