从字符串中提取第一个数字的值sql
问题描述:
我发现很多答案指出了我想要的正确轨道,如this。但是,如果我有一个像“此附件将是22英寸x 15英寸长”的字符串,我想要抓住“22”(字符串中的第一个int值)。另外,我不会知道int值有多大(字符数),因此我需要找到整个第一个int值,直到字符串中的下一个特殊字符/空格。从字符串中提取第一个数字的值sql
任何想法我可以怎么做呢?
答
假设真的是在字符串中的数字,你可以使用patindex()
:
select left(s, patindex('%[^0-9]%', s) - 1)
from (select substring(col, patindex('%[0-9]%', col), len(col)) as s
from t
) t;
[SQL提取子(可能重复http://stackoverflow.com/questions/1650880/sql-extract-子串) – APH