表SellRecord里存在一列ListNumber,数据为:
'13-1'
'13-3'
'13-2'
'13-15'
'13-12'
'13-8'select ListNumber
from SellRecord
order by convert(int,RIGHT(ListNumber,LEN(ListNumber)-CHARINDEX('-',ListNumber)))执行了此sql查询后,我认为应该按照'-'右边的数字排序,但事实并非如此,求原因
'13-1'
'13-3'
'13-2'
'13-15'
'13-12'
'13-8'select ListNumber
from SellRecord
order by convert(int,RIGHT(ListNumber,LEN(ListNumber)-CHARINDEX('-',ListNumber)))执行了此sql查询后,我认为应该按照'-'右边的数字排序,但事实并非如此,求原因
解决方案 »
- sqlserver2005上,想得到在这台db上被执行过的每一句sql文及每句sql文的执行时间
- order by ID 索引怎么改
- 技术性散分:如何在过程中实现将某表导出为固定格式的文本文件?
- 通过数据库,源码生成代码时主键的问题,求指导
- 关于多个数据库同时更新的问题
- opendatasource的問題,100分獻給你
- 有关查询结构排序的问题。急、急、急
- 请问如何将一个数据库中的所有视图和存储过程复制到另一库中?
- 求教关于完全备份和增量备份及恢复的详细解说与用法
- mssql70的database的单个file的最大容量???
- |zyciis| 求一个表对应另一个表递归结果 谢谢
- SQL 月统计
if object_id('tb') is not null
drop table tb
go
create table tb
(
listnumber varchar(10)
)
go
insert into tb
select '13-1'union all
select '13-3'union all
select '13-2'union all
select '13-15'union all
select '13-12'union all
select '13-8'
go
select ListNumber
from tb
order by convert(int,RIGHT(ListNumber,LEN(ListNumber)-CHARINDEX('-',ListNumber)))
/*
ListNumber
----------
13-1
13-2
13-3
13-8
13-12
13-15(6 行受影响)
*/没错啊