最日很郁闷 数据库有一列HireAmount INT类型
我用SELECT * FROM TABLE ORDER BY HireAmount 对表TABLE进行排序 可是出现的情况是有几行的乱的,比如说:
HireAmount
10
32
5
7
8
9请问这是怎么回事?
我用SELECT * FROM TABLE ORDER BY HireAmount 对表TABLE进行排序 可是出现的情况是有几行的乱的,比如说:
HireAmount
10
32
5
7
8
9请问这是怎么回事?
insert @tab values(32)
insert @tab values(5)
insert @tab values(7)
insert @tab values(8)
insert @tab values(9)select * from @tab
select * from @tab order by HireAmount--说明HireAmount字段是字符型的
select * from @tab order by convert(varchar(10),HireAmount)
insert @tab values(32)
insert @tab values(5)
insert @tab values(7)
insert @tab values(8)
insert @tab values(9) --select * from @tab
select * from @tab order by HireAmount --说明HireAmount字段是字符型的
select * from @tab order by convert(varchar(10),HireAmount)--你应该这样
select * from @tab order by convert(int,HireAmount)
请问select * from @tab order by len(HireAmount),HireAmount 是什么意思?
转换成int后就可以了。
2不转换的话,就按 order by len(HireAmount),HireAmount
也可以