是否可以在case
聲明中調用函數?是否可以在一個case語句中調用函數?
例子:
(CASE WHEN (((POWER((1+x1/x2),Term) - 1) > 0) THEN
10 ELSE dbo.fnx(x1,x2,x3) END) as [123]
是否可以在case
聲明中調用函數?是否可以在一個case語句中調用函數?
例子:
(CASE WHEN (((POWER((1+x1/x2),Term) - 1) > 0) THEN
10 ELSE dbo.fnx(x1,x2,x3) END) as [123]
艱難的,你可以只嘗試...
CASE input_expression
input_expression
是當使用簡單CASE格式計算的表達式。 input_expression是任何有效的表達式。
什麼是有效的表達式?:
一個表達式可以是以下任意的:
資源:
(請注意,存儲過程*不在該列表中...)無論如何,有一個鏈接到MSDN源? – 2012-03-24 22:14:13
當然可以,你缺少一個支架:
(CASE WHEN (((POWER((1+x1/x2),Term) - 1) > 0)) THEN
10 ELSE dbo.fnx(x1,x2,x3) END) as [123]
如果不解決您的問題,您可以調查用戶的權限
編輯:
在你有太多的括號內第二個想法,這是更可讀:
CASE WHEN POWER(1+x1/x2,Term) - 1 > 0 THEN
10 ELSE dbo.fnx(x1,x2,x3) END as [123]
簡單方法找出:嘗試一下,如果你得到錯誤= >>>你不能。它甚至更快,然後問一個問題是什麼。 – gdoron 2012-03-24 22:09:23
而你瞭解更多! – 2012-03-24 22:13:07
當您嘗試過時發生了什麼? – dldnh 2012-03-24 22:15:16