SQL字符串字段内的字符排序 20chinaboykai]

发布时间:2014-1-1 0:09:46编辑:www.fx114.net 分享查询网我要评论
本篇文章主要介绍了"SQL字符串字段内的字符排序 20chinaboykai]",主要涉及到SQL字符串字段内的字符排序 20chinaboykai]方面的内容,对于SQL字符串字段内的字符排序 20chinaboykai]感兴趣的同学可以参考一下。

排序要求: 1.首先安装 #号前面的字符大小排序 2.再按照 / 左右消除的结果排序 例如: 1/4 < 5/16 排序前 1/4-20 10#-24 2#-56 4#-40 5/16-18 6#-32 8#-32 排序后结果 2#-56 4#-40 6#-32 8#-32 10#-24 1/4-20 5/16-18

order by 0+left(col,charindex('#',col)-1), 0+substring(col,charindex('#',col)+1,1000)

--> 测试数据:[TB] if object_id('[TB]') is not null drop table [TB] GO create table [TB]([col] varchar(7)) insert [TB] select '1/4-20' union all select '10#-24' union all select '2#-56' union all select '4#-40' union all select '5/16-18' union all select '6#-32' union all select '8#-32' SELECT * FROM TB ORDER BY CASE WHEN CAST(PARSENAME(REPLACE(col,'#','.'),2) AS int) IS NULL THEN 1 ELSE 0 END, CAST(PARSENAME(REPLACE(col,'#','.'),2) AS int), PARSENAME(REPLACE(col,'/','.'),2) /* col ------- 2#-56 4#-40 6#-32 8#-32 10#-24 1/4-20 5/16-18 (7 行受影响) */ drop table [TB]

jiangshun 谢谢你哦。。。。正解。。。


上一篇:SQL按照自动内容排序 20分,无满意结帖,结帖人chinaboykai]
下一篇:SQL Server 2008 介绍大家一个有趣的函数NTILE 40magician547]

相关文章

相关评论

本站评论功能暂时取消,后续此功能例行通知。

一、不得利用本站危害国家安全、泄露国家秘密,不得侵犯国家社会集体的和公民的合法权益,不得利用本站制作、复制和传播不法有害信息!

二、互相尊重,对自己的言论和行为负责。

好贷网好贷款