加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

sql – 使零出现在升序列表的最后

发布时间:2020-12-12 16:23:07 所属栏目:MsSql教程 来源:网络整理
导读:我在Android应用程序中使用SQLite. 在我的所有表中,我有一个索引为0的默认行,它保存该表的默认值. 在大多数情况下,每个字段的默认编号为0,这是要使用的最佳编号. 但是,当我使用ORDER BY语句对数据进行排序时,我希望将所有零值字段放在列表的末尾,因为它们通常
我在Android应用程序中使用SQLite.
在我的所有表中,我有一个索引为0的默认行,它保存该表的默认值.
在大多数情况下,每个字段的默认编号为0,这是要使用的最佳编号.
但是,当我使用ORDER BY语句对数据进行排序时,我希望将所有零值字段放在列表的末尾,因为它们通常是空的并使用默认信息.
在where语句中排除这些字段是不可接受的,因为我正在尝试对信息进行排序,而不是对其进行过滤.

这是我到目前为止所拥有的:

select distinct item.name,epoch_date.epoch
from epoch_date,time
where (time.begin_date_id = epoch_date._id)
and (item.time_id = time._id)
order by epoch_date.epoch;

在我的沙盒数据库中,它返回如下内容:

"item 1",0
"item 2",0
"item 4",0
.
.
.
"item 3",1275350400
"item 42",1275472800
"item 12",1275472800

但我想要的是:

"item 3",1275476400
.
.
.
"item 1",0

解决方法

相当于CASE声明建议,但更短:
ORDER BY epoch_date.epoch == 0,epoch_date.epoch

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读