三个领域:
Activity (varchar), Arrival (time), Departure (time)
Activity Arrival Departure
Travel to Hotel 9:00 -
Depart Hotel for Big Ben - 10:00
Sight-seeing Big Ben 12:00 13:00
– 表示我的表中的NULL值.
我目前在我的查询中订购如下:
ISNULL(Activity.arrival),Activity.arrival ASC
在提供抵达日期时效果很好.当到达为空时,我最终得到一个这样的表
Activity Arrival Departure
Travel to Hotel 9:00 -
Sight-seeing Big Ben 12:00 13:00 // problem!
Depart Hotel for Big Ben - 10:00 // should be up one.
我不确定我是否可以使用纯sql来实现这一点.
SELECT `id`, `activity`, `arrival`, `departure` FROM `activities` ORDER BY ISNULL(`arrival`) ASC, `arrival` ASC
而我只是输出:
foreach($r as $k) {
echo $k['activity'] . ' ' . $k['arrival'] . ' ' . $k['departure'];
}
我是否需要在输出时操纵它?
感谢您的任何见解.
解决方法:
您可以使用COALESCE()返回第一个非空值.
通过COALESCE订购(Activity.arrival,Activity.departure)
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。