这是SQLite的正确语法,使空值出现在最后吗?

前端之家收集整理的这篇文章主要介绍了这是SQLite的正确语法,使空值出现在最后吗?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
select * from table1
order by case Language when null then 1 else 0 end,Language

无论我使用哪种方式,它总是首先显示空值.是否有一种标准方法允许非空值采用排序优先级?

多谢你们

解决方法

你不需要什么时候:

SELECT * FROM table1
ORDER BY Language IS NULL,Language

运算符IS将返回1,否则返回0(Operators).

编辑:处理空TEXT,还:

SELECT * FROM table1
ORDER BY Language IS NULL OR Language='',Language

ORDER BY子句使用两个字段:

>语言为空或语言=”.这是一个布尔表达式(在sqlite中导致0(假)或1(真)),与(语言IS NULL)或(语言=”)相同
>当第一个字段具有相同的结果时,使用第二个字段:语言.

这样,只要Language为NULL或空TEXT,第一个字段将为1,依赖于其他结果之后的结果,计算为0.然后,第二个字段用于对Language具有内容的所有结果进行排序.

猜你在找的Sqlite相关文章