本文介绍了SQLITE 按数字而非字母顺序的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

当我通过 Classement 订购我的数据库 SQLITE 时,我有这个:

When I order my database SQLITE by Classement I have this :

Classement | Nom
1          | clem
10         | caro
11         | flo
12         | raph
2          | prisc
3          | karim
4          | prout

我想得到:

Classement | Nom
1          | clem
2          | prisc
3          | karim
4          | prout
10         | caro
11         | flo
12         | raph

这是我的代码:

SELECT t.Classement 
FROM tableau t 
WHERE 1 = (SELECT 1 + COUNT (*) FROM tableau t2 WHERE t2.Classement < t.Classement OR ( t2.Classement == t.Classement AND t2.Nom < t.Nom ))

谁能帮帮我?谢谢!

推荐答案

如果值为字符串,您将获得字母顺序.

You get alphabetic order if the values are strings.

要更改表格,使所有 Classement 值都是数字,请确保列类型不是文本类型,并使用:

To change the table so that all Classement values are numbers, ensure that the column type is not a text type, and use this:

UPDATE tableau SET Classement = CAST(Classement AS NUMBER);

这篇关于SQLITE 按数字而非字母顺序的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

10-11 22:24