1
2
由于不能使用表参数,请尝试传入CSV sting,并让存储过程为您将其拆分为行。
你需要创建一个分割函数。这就是拆分函数的用法:
I prefer the number table approach to split a string in TSQL 但是在SQLServer中有很多方法可以分割字符串,请参阅前面的链接,其中解释了每种方法的优缺点。
要使Numbers表方法工作,您需要执行一次性表设置,这将创建一个表
设置完数字表后,创建此拆分函数:
只要从文章(CLR,loop,随便什么)中选择一个能处理大量csv的最佳字符串分割函数,就可以获得更好的性能。 |
2
0
如果您所做的只是从元素集合中提取一个字段,那么只需将XML解析为字符串、将字段提取到数组中并将数组传递给SP或将值插入临时表并将表的名称传递给SP可能会更好,您没有数据库引擎解析XML。这种方法不是最灵活的,因此如果您需要对几种不同类型的元素执行此操作,则可能不合适。 |
ybou · 需要帮助从SQL 2005查询中删除过时的=*连接运算符 7 年前 |
Robert · 将多个分隔符分隔的字段视为不同的行 8 年前 |
hud · 执行存储过程会导致错误 8 年前 |
Gonzalo · 如何将存储过程的结果插入到新表中? 8 年前 |