一、如何提取字符串中的纯数字
SQL语句如下(示例):

select a,substring(a,patindex('%[0-9]%', a),
patindex('%[0-9][^0-9]%', a)-patindex('%[0-9]%', a)+1)as only_number
from A


二、效果图

一基础使用: --声明一个nvarchar类型的变量并赋值declare @Name nvarchar(50)set @Name='我正在123学.习22. SQL 11.的一些函数' --patindex函数返回所查内容在 字符串 第一次出现的内容print patindex('%在%',@Name) --此处会返回3 print patindex('%[0-9]%',@Name) --此处会返回4 --STUFF函数删除指定长度的字符在指定的起始点插入另一组字符--格式 stuff(param...
/****** Object: UserDefinedFunction [dbo].[F_Get_No] Script Date: 10/18/2013 22:03:13 ******/ SET ANSI_NULLS ON SET QUOTED_IDENTIFIER ON create func...
SQL Server 可以使用内置函数 `PARSE` 或者 `STRING_SPLIT` 来实现分隔 字符串 。 例如,要将 字符串 "A,B,C,D" 按照 "," 进行分隔,可以使用以下代码: SELECT value FROM STRING_SPLIT('A,B,C,D', ',') 也可以使用 `PARSE` 函数,例如: DECLARE @str nvarchar(50) = 'A,B,C,D'; WITH split (start, [end], value) AS SELECT 1, CHARINDEX(',', @str), SUBSTRING(@str, 1, CHARINDEX(',', @str) - 1) UNION ALL SELECT [end] + 1, CHARINDEX(',', @str, [end] + 1), SUBSTRING(@str, [end] + 1, CHARINDEX(',', @str, [end] + 1) - [end] - 1) FROM split WHERE [end] > 0 SELECT value FROM split; 这两种方法都可以用来分隔 字符串 ,您可以根据实际情况选择使用。