我想使用我的功能
SELECT BaseSplit(line,';') FROM table
有没有办法做到这一点?
我尝试CROSS APPLY但不是我想要的
我的表有一个名为line
的列line
______
15;2;5
NULL
10;3;6
我想将此列拆分为
15
2
5
Null
10
3
6
是否有自动执行此操作的字符串函数?
如果没有,是否可以编写自己的函数?
答案 0 :(得分:1)
它应该可以正常工作,但你需要对函数进行模式限定。
IE:
SELECT dbo.BaseSplit(line,';') FROM table
如果你的功能与dbo的模式不同,你显然应该使用它。
好的 - 假设它有一个表值函数,然后......
SELECT t.Id, f.* FROM table AS t CROSS APPLY dbo.BaseSplit(line,';') AS f
这将为每个分割行返回一行+主表中该条目的ID(假设主表中存在名为Id的列)。如果你想要更好,我需要一个你期望输出的例子