2017-10-12 103 views
0

我想获取我的函数给出的值并将其保存到变量中,以检查它是否为'0'。经过广泛的搜索后,我无法找到一种方法来做到这一点。它甚至有可能吗?将SQL函数的结果保存到select语句中的变量中?

DECLARE @InspectionID AS VARCHAR(10) 
SELECT 
    SYEL.UserComments AS 'UserComments', 
    SET @InspectionID = [Silco_Final].[dbo].[GetInspectionIDFromUserComments](SYEL.UserComments) 
FROM SY_Edit_Log SYEL 
WHERE SYEL.UserCode = 'broberts' 
AND @InspectionID <> '0' 
+0

我不熟悉使用的功能在SQL Server中,但只是把它扔在那里:你可以有'WHERE [Silco_Final] [DBO] [GetInspectionIDFromUserComments(SYEL.UserComments)<> 0。 “'? – RToyo

+1

如果可能,我会将标量函数改为内联表值函数。你会从中获得一些认真的性能提升。 –

+0

我甚至不确定那是什么,但我肯定会研究它。谢谢肖恩! – snapper

回答

3

你不能直接在where子句中调用函数吗?

SELECT 
    SYEL.UserComments AS 'UserComments', 
FROM SY_Edit_Log SYEL 
WHERE SYEL.UserCode = 'broberts' 
AND [Silco_Final].[dbo].[GetInspectionIDFromUserComments](SYEL.UserComments) <> '0' 
+0

男人,我从来没有想到这一点...伟大的电话! – snapper

相关问题