如何解决包含空值的多列上的 SQL Order By
我有一个包含多列的表格,我想按表格中的三列进行排序。我想按批次订购,然后是单位,最后是编号。批次和单位可以包含空值(需要在底部列出它们),而数字列不包含空值。我已经尝试了一堆 case 语句,但没有给出想要的结果。 - 按...排序,最后一个空不是一个选项。
地块 | 单位 | 数量 |
---|---|---|
空 | 空 | 500 |
空 | 空 | 425 |
空 | 空 | 424 |
空 | 7 | 419 |
空 | 9 | 450 |
25 | 空 | 475 |
22 | 空 | 486 |
22 | 空 | 485 |
19 | 7 | 465 |
19 | 9 | 432 |
想要的结果:
地块 | 单位 | 数量 |
---|---|---|
19 | 7 | 465 |
19 | 9 | 432 |
22 | 空 | 485 |
22 | 空 | 486 |
25 | 空 | 475 |
空 | 7 | 419 |
空 | 9 | 450 |
空 | 空 | 424 |
空 | 空 | 425 |
空 | 空 | 500 |
解决方法
您可以通过检查空值来排序:
delJoke(joke) {
var index = this.setList.indexOf(joke)
... your code
}
,
您已标记您的问题 SQL,但未提及数据库。标准 SQL 有一种非常方便的方式来做你想做的事:
order by Lot nulls last,Unit nulls last,Number
并非所有数据库都支持 nulls last
和 nulls first
,但这是标准的 SQL 解决方案。
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。