MSSQL 截取数据
ALTER Function [dbo].[fn_StrToTable](
@str varchar(max),
@Separator1 VARCHAR(10) -----第一级别的间隔符号
)
Returns @tableName Table
(
columnName varchar(max)
)
As
Begin
if @Separator1 is null or @Separator1=''
begin
set @Separator1=','
end
set @str = @str+@Separator1
Declare @insertStr varchar(max)
Declare @newstr varchar(max)
set @insertStr = left(@str,charindex(@Separator1,@str)-1)
set @newstr = stuff(@str,1,charindex(@Separator1,@str),'')
Insert @tableName Values(@insertStr)
while(len(@newstr)>0)
begin
set @insertStr = left(@newstr,charindex(@Separator1,@newstr)-1)
Insert @tableName Values(@insertStr)
set @newstr = stuff(@newstr,1,charindex(@Separator1,@newstr),'')
end
Return
End
用法:
Declare @str nvarchar(max) set @str='{"imageUrl_Extend":"@/upload/images/2018/11/8e74929fbae98809.jpg,@/upload/images/2018/11/39899ba3a34897c2.jpg,@/upload/images/2018/11/94bad2a6bec588f6.jpg","titleFormatString":"False_False_False_","checkUserName":"admin","checkDate":"2018-11-15 10:38","checkReasons":""}' select REPLACE(SUBSTRING(columnName,0,CHARINDEX(',',columnName)),'"','') from( select * from [dbo].[fn_StrToTable](@str) )tb where columnName like '%.jpg%' or columnName like '%.png%'
Declare @str nvarchar(max)
set @str='{"imageUrl_Extend":"@/upload/images/2018/11/8e74929fbae98809.jpg,
@/upload/images/2018/11/39899ba3a34897c2.jpg,@/upload/images/2018/11/94bad2a6bec588f6.jpg",
"titleFormatString":"False_False_False_","checkUserName":"admin","checkDate":"2018-11-15 10:38","checkReasons":""}'
select * from [dbo].[fn_StrToTable](@str,'')
select REPLACE(SUBSTRING(columnName,0,CHARINDEX(',',columnName)),'"','') from(
select * from [dbo].[fn_StrToTable](@str,'')
)tb where columnName like '%.jpg%' or columnName like '%.png%'
select T1= REPLACE( SUBSTRING(columnName,0, CHARINDEX( ';',columnName)),'"','') from( select columnName from [dbo].[fn_StrToTable]('229323;Joy|2294;Joang','|') )tb
结果:
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 记一次.NET内存居高不下排查解决与启示
· 探究高空视频全景AR技术的实现原理
· 理解Rust引用及其生命周期标识(上)
· 浏览器原生「磁吸」效果!Anchor Positioning 锚点定位神器解析
· 没有源码,如何修改代码逻辑?
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」