sql中遍历字符串

在sql或者存储过程中会需要遍历字符串。

declare @idList varchar(500),    --如111,222,333,尾部加,
    @str varchar(100),
    @Id int,
    @split varchar(10)

set @split = ‘,‘
while(charindex(@split,@idList)<>0)
begin
    set @str = substring(@idList,1,charindex(@split,@idList)-1)
    set @idList = stuff(@idList,1,charindex(@split,@idList),‘‘)
    --字符转int
    set @Id=cast(@str as int)
    --这里可以用int型得id做一些数据库操作
end  

原文地址:https://www.cnblogs.com/qk2014/p/9077453.html

时间: 2024-10-13 13:44:35

sql中遍历字符串的相关文章

SQL点滴33—SQL中的字符串操作

原文:SQL点滴33-SQL中的字符串操作 计算字符串长度len()用来计算字符串的长度 select sname ,len(sname) from student 字符串转换为大.小写lower() 用来将一个字符串转换为小写,upper() 用来将一个字符串转换为大写 select lower('I AM A STUDENT !') select upper('i am a student !') 截去字符串左.右侧空格                                    

关于C#中遍历字符串中的每个字符的方法

解决方案 C#提供了两个方法用于遍历字符串. 1.第一个方法是foreach循环,这个方法快速且容易,但是与第二个方法相比它不太灵活.其使用方法如下: string testStr = "abc123"; foreach (char c in testStr) { Console.WriteLine(c.ToString()); } 2.第二个方法使用for循环而不是foreach循环来遍历字符串.例如: string testStr = "abc123"; for

SQL中关于字符串的处理

DECLARE @STR VARCHAR(MAX),@PRAM VARCHAR(20)SET @STR='中华人民共和国万岁'--字符串连接SET @[email protected]+'an'[email protected] --字符串拆分WHILE LEN(@STR)>0BEGINSET @PRAM=LEFT(@STR,4)PRINT '取得参数:'[email protected]SET @STR=RIGHT(@STR,LEN(@STR)-4)PRINT '剩余字符串:'[email p

SQL中拆分字符串substr及统计字符出现频数replace用法实例讲解

一.拆分字符串为若干行 例一:要求将表emp中的'king'按照每行一个单词拆成四行 注意:substr(str,pos):截取pos位置开始的字符: substr(str,pos,len):从pos位置开始,选出接下去的len个字符 表emp: eid ename 1 ring 2 king 3 ting 4 ping 首先,建立表tmp(基干表,为了配合表一使用): tid 1 2 3 4 5 然后,select emp.ename,tmp.tid from emp,tmp where em

SQL中判断字符串中包含字符的方法

通过2个函数CHARINDEX和PATINDEX以及通配符的灵活使用函数:CHARINDEX和PATINDEXCHARINDEX:查某字符(串)是否包含在其他字符串中,返回字符串中指定表达式的起始位置.PATINDEX:查某字符(串)是否包含在其他字符串中,返回指定表达式中某模式第一次出现的起始位置:如果在全部有效的文本和字符数据类型中没有找到该模式,则返回零.特殊:可以使用通配符! 例子:1. 查询字符串中是否包含非数字字符SELECT PATINDEX('%[^0-9]%', '1235X4

sql中取出字符串中数字

select substring(reverse('0->星光'),PATINDEX('%[0-9]%',reverse('0->星光')),1) 原文地址:https://www.cnblogs.com/guangzhou11/p/9093066.html

SQL中Len与DataLength区别

SQL中求字符串长度问题 一.LEN(Param) 求字符串的长度 DataLength(param) 求字符串所占的字节长度 二.LEN不返回文本之后的空格长度 而DataLenth则不同 三.针对NText.text.image这样的数据类型 求长度DataLenth非常有用. 因为:1.这些数据类型对应的内容是可变的 .DataLength计算所占内存的字节数 2.以上三种数据类型Len是无法计算的. 以上内容仅供学习使用,若有不同意见 ,及时指出,一起学习

在PL/SQL中使用日期类型

之前的文章介绍了在PL/SQL中使用字符串和数字了下.毫无疑问,字符串和数字很重要,但是可以确定的是没有哪个应用不依赖于日期的. 你需要记录事件的发生事件,人们的出生日期等等很多. 通常的使用方式是: 1)声明日期变量和常量 2)使用内建函数显示和修改日期值 3)执行日期相关计算 日期类型比字符串或数字更复杂.它有多个部分组成(年,月,日,时,分,秒等),而且关于一个有效的日期有很多规则. 本文将给你所有信息以便在PL/SQL程序中使用日期. 1.PL/SQL中的日期,时间戳和间隔(Interv

sql 语句系列(字符串的遍历嵌入删除与统计)[八百章之第十一章]

遍历字符串 我觉得首先要提出一个疑问: 一个数据库本身就是用于存储的,遍历字符串究竟有何意义? 先看如何实现的,毕竟sql service 是没有for循环,也没有loop和while的. select SUBSTRING(e.ENAME,t.ID,1) as sub from emp e,T10 t where e.ENAME='JONES' and t.ID<=len(e.ENAME) 的确是遍历了这个字符串JONES. 原理也十分的简单: select * from T10 T10 可以看