加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 站长学院 > MsSql教程 > 正文

SqlServer 小记 PATINDEX

发布时间:2020-12-12 13:49:17 所属栏目:MsSql教程 来源:网络整理
导读:1. declare @str nvarchar(max) declare @str1 nvarchar(50) declare @str2 nvarchar(50) select @str='XX' Declare @n int? set @n=18869 while @n=20000 begin ?? ?select @str1=''+convert(nvarchar(10),@n)+'' ?select @str2=''+convert(nvarchar(10),@n

1.
declare @str nvarchar(max)
declare @str1 nvarchar(50)
declare @str2 nvarchar(50)
select @str='XX'
Declare @n int?
set @n=18869
while @n<=20000
begin
??
?select @str1='<'+convert(nvarchar(10),@n)+'>'
?select @str2='<'+convert(nvarchar(10),@n)+'title'
?
?select @str=replace(@str,@str1,'')
?select @str=replace(@str,@str2,'<title','=','$')


?set @n=@n+1
End
print @str


select @str






2.
declare @str nvarchar(max)
select @STR='XX'


select REPLACE(@str,'>','$')






3.
DECLARE @SourceSql VARCHAR(MAX)
DECLARE @StrSeprate VARCHAR(10)
? ? DECLARE @i INT
? ? DECLARE @Name NVARCHAR(50)
? ? DECLARE @j INT
? ??
? ? SET @StrSeprate='$'
? ? SET @SourceSql='XXX'
? ? SET @SourceSql = RTRIM(LTRIM(@SourceSql))
? ? SET @i = CHARINDEX(@StrSeprate,@SourceSql)
? ? WHILE @i>=1 BEGIN
SET @Name = LEFT(@SourceSql,@i-1)
? ? ? ? SET @SourceSql = SUBSTRING(@SourceSql,@i + 1,LEN(@SourceSql) - @i)
? ? ? ? SET @i = CHARINDEX(@StrSeprate,@SourceSql)
? ? ? ??
? ? ? ? SET @j= PATINDEX('%[0-9]%',@Name) ? ? ? ? if @j=0 ? ? ? ? BEGIN IF NOT EXISTS(SELECT * FROM c_all WHERE dname=@Name) BEGIN INSERT INTO c_all(dname) VALUES(@Name) END ? ? ? ? END ? ? ? ? ELSE ? ? ? ? BEGIN ? ? ? ? IF NOT EXISTS(SELECT * FROM c_all WHERE uname=@Name) BEGIN INSERT INTO c_all(uname) VALUES(@Name) END ? ? ? ? END ? ? ? ?? ? ? END

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读