T-SQL 创建一个使用 UDF 的列

Posted

技术标签:

【中文标题】T-SQL 创建一个使用 UDF 的列【英文标题】:T-SQL make a Column that uses a UDF 【发布时间】:2014-09-17 16:26:26 【问题描述】:

基本上,我创建了一个@table,我想插入一个正在使用函数的列。

我认为我做错了WHERE etc... AND Column = (function)

我显示了该列,但没有使用该功能。如何将此逻辑插入到现有表中?

    USE database
DECLARE @var DATETIME='...'
DECLARE @var VARCHAR(100) = '...'
DECLARE @var TABLE 
(
    var varchar (8) NOT NULL,
    var nvarchar(50) NULL,
    varD varchar(14) NOT NULL,
    var datetime NULL,
    var varchar(1) NULL,
    var varchar(1) NULL,
    var varchar(14) NOT NULL,
    var date NULL,
    UDF AS (dbo.UDF(var))
)


INSERT INTO @table stuff, UDF)
SELECT a.stuff, b.stuff, c.UDF
FROM table a
INNER JOIN table b ON a.var = b.var AND b.var<>'ttt' AND b.var IS NOT NULL,
@table c


WHERE
    (   
        b.var<>'ttt' 
        AND b.var IS NOT NULL
        AND b.var <> 'ttt' 
    )

【问题讨论】:

请向我们展示您的表变量的完整声明! 好的!我得稍微清洗一下,因为它有点敏感!另外,我们要去吃午饭,所以我回来后会做。感谢您的回复! 已编辑...更多文字楼层。 【参考方案1】:

事实证明,我需要在我的 SELECT 中将列设置为 UDF。我花了很多时间看它,我发现了我的错误。我感谢任何看到这个的人!

【讨论】:

以上是关于T-SQL 创建一个使用 UDF 的列的主要内容,如果未能解决你的问题,请参考以下文章

如何在 SELECT 或 UPDATE 语句中使用 T-SQL UDF?

SQL Server 2008 T-SQL UDF Split() 剪裁

T-SQL 流程设计和执行计划(UDF 参数嗅探?)

SQL Server UDF 的列别名错误

SQL Server 2014 UDF - 精简功能

udf 在 t-sql 编程中没有正确返回数据