Android SQLite数据库查询排序顺序字母表先行,然后是数字和特殊字符



我的数据库中有这样的数据:

Abc
Rsy
456
Zur
(67
123
DYU
*90

我想这样排序:-

Abc
DYU
Rsy
Zur
123
456
(67
*90

我正在使用以下查询来获取数据:-

SELECT * FROM list WHERE order by 
CASE WHEN name GLOB '[A-Za-z]*' THEN name ELSE '~' || name END

使用上面的 QUERY,我在数字之前获取特殊字符。那么如何获得上述排序顺序呢?

CASE表达式中,所有分支都返回相同的列,但它应根据您的条件返回不同的值:

SELECT * FROM list 
ORDER BY CASE 
WHEN name GLOB '[A-Za-z]*' THEN 1
WHEN name GLOB '[0-9]*' THEN 2  
ELSE 3 
END,
name

相关内容

最新更新