我的表中有一个包含各种条目的 varchar 字段。如何使用 order by 语句获得以下结果:
1
2
3
4
5
6
7
8
9
10
Steinstrass 1
Steinstrass 2
Steinstrass 3
Steinstrass 4
Steinstrass 5
Steinstrass 6
Steinstrass 7
Steinstrass 8
Steinstrass 9
Steinstrass 10
最佳答案
这对我有用:
mysql> select * from sorting;
+---------+
| field1 |
+---------+
| 1 |
| 4 |
| 10 |
| Item 1 |
| Item 10 |
| Item 0 |
| 0 |
+---------+
7 rows in set (0.00 sec)
mysql> select field1 from sorting order by length(field1),field1 asc;
+---------+
| field1 |
+---------+
| 0 |
| 1 |
| 4 |
| 10 |
| Item 0 |
| Item 1 |
| Item 10 |
+---------+
7 rows in set (0.00 sec)
关于mysql - 按字符串和数字排序,首先是数字,然后是 'strings of numbers',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11817564/