Sql 如果是字符串的一部分,我如何按数字订购?
有没有办法按字符串的小数部分排序?我的数据是这样存储的:Sql 如果是字符串的一部分,我如何按数字订购?,sql,database,sqlite,Sql,Database,Sqlite,有没有办法按字符串的小数部分排序?我的数据是这样存储的:一些字符串值xx.yy,其中xx.yy是一个十进制数 SELECT some_string FROM table ORDER BY some_string desc; 结果如下: Some string value 18.9 Some string value 18.8 Some string value 18.7 ... Some string value 18.2 Some string value 18.13 Some string
一些字符串值xx.yy
,其中xx.yy
是一个十进制数
SELECT some_string FROM table ORDER BY some_string desc;
结果如下:
Some string value 18.9
Some string value 18.8
Some string value 18.7
...
Some string value 18.2
Some string value 18.13
Some string value 18.12
Some string value 18.11
Some string value 18.10
Some string value 18.1
Some string value 18.13
Some string value 18.12
Some string value 18.11
Some string value 18.10
Some string value 18.9
Some string value 18.8
Some string value 18.7
...
Some string value 18.1
但预期结果如下:
Some string value 18.9
Some string value 18.8
Some string value 18.7
...
Some string value 18.2
Some string value 18.13
Some string value 18.12
Some string value 18.11
Some string value 18.10
Some string value 18.1
Some string value 18.13
Some string value 18.12
Some string value 18.11
Some string value 18.10
Some string value 18.9
Some string value 18.8
Some string value 18.7
...
Some string value 18.1
如果前缀长度相同,可以使用以下技巧:
order by len(some_string) desc, some_string_desc
如果前缀长度相同,可以使用以下技巧:
order by len(some_string) desc, some_string_desc
你必须发挥功能 请参阅
SUBSTR
、LENGTH
、INSTR
是可以拯救您的主要因素。一旦你开始探索它们,你就会了解它们
或
我仍然喜欢将两个值分开并存储到单独的列中。这将在处理数据时为您提供更大的灵活性。您必须使用这些功能 请参阅
SUBSTR
、LENGTH
、INSTR
是可以拯救您的主要因素。一旦你开始探索它们,你就会了解它们
或
我仍然喜欢将两个值分开并存储到单独的列中。这将在处理数据时为您提供更大的灵活性。这就成功了
len
显然不是SQLite函数。“谢谢,”戈登·林诺夫说
SELECT some_string
FROM table_name
ORDER BY length(some_string) desc, some_string desc
这就成功了
len
显然不是SQLite函数。“谢谢,”戈登·林诺夫说
SELECT some_string
FROM table_name
ORDER BY length(some_string) desc, some_string desc
是的,最好是两列,但这是一个没有太多灵活性的遗留系统。是的,最好是两列,但这是一个没有太多灵活性的遗留系统。