一个拆分有规律字符串的SQL
2007-08-16 23:23
330 查看
最近做项目,由于数据库设计的问题,需要将几个值合成一个字符串,值与值之间以逗号隔开,做为存储过程的参数传到SQLServer中, 然后将这个字符串分别拆开,还原成原来的值,分别存入对应的表,由于本人从事开发以来,数据库虽懂但却不精,所以将这个实现拆分的SQL贴出,希望大家多多指教!
declare @str varchar(100),@s varchar(100),@s1 varchar(100)
set @str = '11,211,311,411,511'
while PATINDEX('%,%',@str)>0
begin
set @s = substring(@str,PATINDEX('%,%',@str) + 1,len(@str)- PATINDEX('%,%',@str))
set @s1 = substring(@str,0,len(@str) - len(@s))
set @str = @s
print @s1
end
print @str
最后print出来的结果是
11
211
311
411
511
刚好是我所需要的。
这有可能在其它数据库中会有不同的实现方法,例如ORCAL,也请高人指教。
以后还会不断的贴出SQL及JAVA方面的学习心得。
declare @str varchar(100),@s varchar(100),@s1 varchar(100)
set @str = '11,211,311,411,511'
while PATINDEX('%,%',@str)>0
begin
set @s = substring(@str,PATINDEX('%,%',@str) + 1,len(@str)- PATINDEX('%,%',@str))
set @s1 = substring(@str,0,len(@str) - len(@s))
set @str = @s
print @s1
end
print @str
最后print出来的结果是
11
211
311
411
511
刚好是我所需要的。
这有可能在其它数据库中会有不同的实现方法,例如ORCAL,也请高人指教。
以后还会不断的贴出SQL及JAVA方面的学习心得。
相关文章推荐
- SQL Server : T-SQL中拆分字符串的一个自定义函数
- 一个关于sql语句的问题解决,包括:字符串拆分,游标
- 将一个以逗号分隔的字符串拆分单个记录,并生成插入sql语句
- SQL Server : T-SQL中拆分字符串的一个自定义函数
- mysql通过sql语句如何批量去掉某一个表中某一个字段的下面的相同部分字符串
- Sql统计一个字符串在另一个字符串出现的次数的函数-fnQueryCharCountFromString
- SQL SERVICE 拆分字符串的表值函数
- 【小小问题集锦4--拆分一个字符串的方法】
- SQLSqlserver中如何将一列数据拼接成一个字符串
- mysql下sql语句令某字段值等于原值加上一个字符串
- SQL2000/2005字符串拆分为列表通用函数
- SqlServer和Oracle从多行记录(数据集)中查询结果并拼接成一个字符串的SQL语句(纵表数据转成拼接的文本)
- sql拆分字符串
- SQL查询字符串和数字的一个问题
- 一个SQL字符串问题的解决
- 把表(table)数据合并为一个字符串的SQL语句
- 【转】如何将一个很长的字符串拆分成数组
- 在论坛中出现的比较难的sql问题:25(字符串拆分3)
- 在sql server数据库里面要把一个字符串转换为整数
- 一个SQL列连成字符串的方法