【发布时间】:2014-05-31 06:32:32
【问题描述】:
我需要将SELECT结果作为用户定义的表参数函数(返回表)的参数传递:
CREATE FUNCTION
...
CREATE TABLE cities
(
ID int identity not null primary key,
name varchar(40) unique
)
SELECT ID as startID,FUNCTION( SELECT name FROM cities ) FROM cities WHERE ID=1
函数用于SELECT city 和ID=1 和FUNCTION 的结果,当参数是所有城市的选择时。 我需要在不将选择分配给变量的情况下执行此操作,因为我在 CTE 内使用此语句无法分配变量(如果可以,请告诉我 :) 但它在我的案例)
【问题讨论】:
-
您好 :) 我尝试执行上述语句,但它拒绝了我的代码,因为它必须是内置函数。我还尝试使用从函数返回的 TABLE 变量进行 INNER JOIN - 它有效,但在 CTE 中无效。问题是在 CTE 中它不允许将选择作为参数传递给函数。
标签: sql sql-server function common-table-expression create-table