首页 > 代码库 > SQL拆分多规则的字符串分离数字。
SQL拆分多规则的字符串分离数字。
--拆分多规则字符串DECLARE @Codes NVARCHAR(MAX)SET @Codes = ‘6*BC-007,*BC-016,9*BC-015‘ --对于*BC-015这种情况,则Qty设置为1SELECT *FROM dbo.fun_split(@Codes, ‘,‘)SELECT (CASE WHEN CHARINDEX(‘*‘, sp.SplitValue) > 0 THEN SUBSTRING(sp.SplitValue, CHARINDEX(‘*‘, sp.SplitValue) + 1, LEN(sp.SplitValue) - CHARINDEX(‘*‘, sp.SplitValue)) ELSE sp.SplitValue END) AS ‘Code‘ , (CASE WHEN CHARINDEX(‘*‘, sp.SplitValue) > = 2 THEN SUBSTRING(sp.SplitValue, 1, CHARINDEX(‘*‘, sp.SplitValue) - 1) ELSE 1 END) AS ‘Qty‘FROM dbo.fun_split(@Codes, ‘,‘) AS sp --SELECT SUBSTRING(‘8*BC-015‘, CHARINDEX(‘*‘, ‘8*BC-015‘) + 1,-- LEN(‘8*BC-015‘) - CHARINDEX(‘*‘, ‘8*BC-015‘)) --SELECT CHARINDEX(‘*‘,‘*BC-016‘) --返回是1
SQL拆分多规则的字符串分离数字。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。