首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

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

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

求助关于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')

热点排行