0
我有我用一个简单的排序SQL语句,如下面的排序问题的T-SQL
Select numbers
From theTable
Order By numbers
我得到的回报是以下
1
11
12
14
2
21
22
23
3
35
37
etc...
我希望它按正常顺序排列
1
2
3
4
5
6
etc...
我有我用一个简单的排序SQL语句,如下面的排序问题的T-SQL
Select numbers
From theTable
Order By numbers
我得到的回报是以下
1
11
12
14
2
21
22
23
3
35
37
etc...
我希望它按正常顺序排列
1
2
3
4
5
6
etc...
您选择的列不作为数值存储。在orderby之前,你需要将它转换成某种数字,然后按照你想要的方式行事。
它应该是一样简单:
select numbers from order orderby cast(numbers as int)
只要只要在该列中的所有值正常施放。
存储数字的列的数据类型是什么?转换/转换为一个int,你应该得到你所期望的。
第二个应该工作,只要没有实际的文字字符偷偷进入数字字段。 – LittleBobbyTables 2010-06-07 19:32:26
按顺序将无法在重命名的列上工作。第二个例子会起作用,如果他的专栏中只有数字值。 – hgulyan 2010-06-07 19:33:07
@LittleBobbyTables:如果有一封信来了,那么1 10 11 2 21无论如何都是正确的顺序。 – 2010-06-07 19:46:45