将表值函数应用于源表中某些列的每个值

时间:2009-05-29 06:48:10

标签: tsql

我有一个表中包含值的表,必须通过某个函数进行拆分,假设为F.函数F取值并将其拆分为值表 - 结果为表。

将此函数应用于源表的每个值并将结果表与所有值进行拆分的最有效方法是什么?我知道我可以使用光标,但我想知道是否存在一些更智能的解决方案?

结果应该是这样的:

SELECT F(column) FROM SourceTable

但这是不可能的,因为F是表值。

1 个答案:

答案 0 :(得分:6)

CROSS APPLY应该可以解决问题。

SELECT *
FROM SourceTable
     CROSS APPLY F(Column)