【发布时间】:2014-02-05 13:46:59
【问题描述】:
我想这样使用我的功能
SELECT BaseSplit(line,';') FROM table
有什么办法吗???
我尝试 CROSS APPLY 但这不是我想要的
我的表有一个名为 line 的列
line
______
15;2;5
NULL
10;3;6
我想将此列拆分为
15
2
5
Null
10
3
6
是否有自动执行此操作的字符串函数?
如果没有,是否可以编写自己的函数?
【问题讨论】:
-
为什么
CROSS APPLY不是你想要的?那你想要什么做? -
根据您的附加信息,
SELECT f.* FROM table AS t CROSS APPLY dbo.BaseSplit(line,';') AS f会返回什么?我们看不到您的函数定义。你需要OUTER APPLY吗? -
它重复了表格中的行,我想要那个 -
-
你想要什么?根据您向我们展示的示例数据,我看不出合理的拆分函数会返回任何重复数据。请提供函数的定义。以及重现问题的示例数据。
-
听起来我们可能还需要这个功能,对吗?您是否正在尝试找到“BaseSplit”之类的功能?
标签: sql sql-server tsql