读书人

关于SQL查询怎么找出字段中的数字部

发布时间: 2012-08-10 12:19:33 作者: rapoo

求助关于SQL查询,如何找出字段中的数字部分
1个/盒*6盒/箱
24袋/盒
10袋/盒
500G
900G
900G
24盒/箱
12瓶/ 盒
6瓶/箱


结果就是这样的,1个/盒*6盒/箱,这个可以先不考虑


SQL code
b.nQuantity*(SELECT CAST(STUFF( cPackageDesc,PATINDEX('%[A-Z]%',cPackageDesc),100,'') AS INT) FROM cdcomm WHERE iComm = b.iComm) AS '重量',


我现在只能找出
500G
900G
900G
这个3个东西,
其余的就出错了
PATINDEX('%[A-Z]%',cPackageDesc) 这个方法只能找出A-Z的字符,所以那种中文的,比如 6瓶/箱 就找不出了
有什么办法可以让不是0-9的数字都判断出来啊?不管是什么字符,文字,从第一个开始读,只要不是0-9就告诉我是这个字符在第几位,怎么做呀?

谢谢哥哥姐姐了

[解决办法]
SQL code
PATINDEX('%[^0-9]%',cPackageDesc)
[解决办法]
SQL code
select patindex('%[^0-9]%','1a1234b0')
[解决办法]
select patindex('%[^0-9]%','1中2a1234b0')

读书人网 >SQL Server

热点推荐