sql – 如何在存储过程中拆分逗号分隔的字符串?

前端之家收集整理的这篇文章主要介绍了sql – 如何在存储过程中拆分逗号分隔的字符串?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
如何将逗号分隔的字符串拆分为存储过程中的字符串并将它们插入表字段?

使用Firebird 2.5

解决方法

这里有一个示例如何拆分字符串并将子字符串写入表中:
create procedure SPLIT_STRING (
  AINPUT varchar(8192))
as
declare variable LASTPOS integer;
declare variable NEXTPOS integer;
declare variable TEMPSTR varchar(8192);
begin
  AINPUT = :AINPUT || ',';
  LASTPOS = 1;
  NEXTPOS = position(',',:AINPUT,LASTPOS);
  while (:NEXTPOS > 1) do
  begin
    TEMPSTR = substring(:AINPUT from :LASTPOS for :NEXTPOS - :LASTPOS);
    insert into new_table("VALUE") values(:TEMPSTR);
    LASTPOS = :NEXTPOS + 1;
    NEXTPOS = position(',LASTPOS);
  end
  suspend;
end

猜你在找的MsSQL相关文章