求助~~~!!

x1234521 2006-12-08 04:50:38
准备写一个存储过程,他接受的参数是这样的
'W20061101332,200|W20061101333,300|'

要求按照“|”,“,”划分开,实现如下形式记录集

--------------------------
| 字段1 | 字段2|
--------------------------
|W20061101332 | 200 |
--------------------------
|W20061101333 | 300 |
--------------------------


帮忙帮忙啊~~~~3Q~ 急哈~~
...全文
141 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
x1234521 2007-01-31
  • 打赏
  • 举报
回复
已经转换方式实现,谢谢。
结贴。
x1234521 2006-12-09
  • 打赏
  • 举报
回复
看似简单的问题~~
如果只分割一个我当然没有问题

但这个是要在分出来的记录中再分,而且要变成我上面的样子,
目前我还是没有实现,有没有朋友可以给出详细代码,小弟谢谢了`~~~

大家帮帮忙啊~~!!~
x1234521 2006-12-09
  • 打赏
  • 举报
回复
但我要的是2个字段啊

W20061101332,200|W20061101333,300|

--------------------------
| 字段1 | 字段2|
--------------------------
|W20061101332 | 200 |
--------------------------
|W20061101333 | 300 |
--------------------------
caixia615 2006-12-09
  • 打赏
  • 举报
回复
分出来后再用repalce(字段,',','|')就行了撒
点点星灯 2006-12-08
  • 打赏
  • 举报
回复
create function f_split(@SourceSql varchar(8000),@StrSeprate varchar(10))
returns @temp table(a varchar(100))
/*--实现split功能 的函数
--date :2005-4-20
--Author :Domino
*/
as
begin
declare @i int
set @SourceSql=rtrim(ltrim(@SourceSql))
set @i=charindex(@StrSeprate,@SourceSql)
while @i>=1
begin
insert @temp values(left(@SourceSql,@i-1))
set @SourceSql=substring(@SourceSql,@i+1,len(@SourceSql)-@i)
set @i=charindex(@StrSeprate,@SourceSql)
end
if @SourceSql<>'\'
insert @temp values(@SourceSql)
return
end


select * from dbo.f_split('山东:济南:山东:济南',':')
marco08 2006-12-08
  • 打赏
  • 举报
回复
學習
点点星灯 2006-12-08
  • 打赏
  • 举报
回复
--参考
http://topic.csdn.net/T/20050424/20/3963176.html

34,593

社区成员

发帖
与我相关
我的任务
社区描述
MS-SQL Server相关内容讨论专区
社区管理员
  • 基础类社区
  • 二月十六
  • 卖水果的net
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧