脚本宝典收集整理的这篇文章主要介绍了PHP:高级ORDER BY,脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
目前我正在使用这个(显然不考虑完成得分):
ORDER BY ".$wpdb->PRefix."fsrep_listings.listing_featured DESC,".$wpdb->prefix."fsrep_listings.listing_last_updated DESC
我在想,如果它在上周完成,我会在完成分数上加30分,如果在上个月完成,我会在完成分数上加20分,如果在过去三个月内完成我会在完成得分上加10分.然后我可以通过这个更新的完成分数来订购它.问题是如何让它每天更改以调整分数.
按照Mark的建议,我输入以下代码:
ORDER BY $wpdb->prefix.'fsrep_listings.listing_score' + if($wpdb->prefix.'fsrep_listings.listing_last_updated' > Now()-iNTERVAL 1 WEEK,30,if($wpdb->prefix.'fsrep_listings.listing_last_updated' > Now()-INTERVAL 1 MONTH,20,if($wpdb->prefix.'fsrep_listings.listing_last_updated' > Now()-INTERVAL 3 MONTHS,10,0)))' DESC';
order by completeion_score - (to_days(Now()) - to_days(completion_date))/3
或完成后经过的天数的某些类似功能.
UPDATE
我上面给出的代码只有sql,没有涉及到PHP,因此除了$wpdb->前缀部分之外,所有内容都应该在引号内. (对于@Mark的回答以及大多数给你代码的人来说,这都是我想象的.)
"ORDER BY ".$wpdb->prefix."fsrep_listings.listing_score - (to_days(Now()) - to_days(".$wpdb->prefix."fsrep_listings.listing_last_updated))/3"
以上是脚本宝典为你收集整理的PHP:高级ORDER BY全部内容,希望文章能够帮你解决PHP:高级ORDER BY所遇到的问题。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。