我寫了這個中值函數,但它執行有錯誤..有人可以指導我什麼是錯的代碼?SQL服務器不能接受中值函數
BEGIN
CREATE TABLE #ITEMORDERDETAILS
(
ITEM CHAR(15),
QTYSHP DECIMAL(21, 6),
RQDATE DATETIME
)
DECLARE @Median FLOAT
DECLARE @ITEM CHAR(15)
DECLARE @ORDERCNT INT
SET @[email protected]
INSERT #ITEMORDERDETAILS
SELECT ITEM,
QTYSHP,
RQDATE
FROM tbl123456
WHERE PRICE != '0'
AND SALESMN != 'WB'
AND RQDATE > (getdate() - 180)
AND ITEM = @ITEM
UNION
SELECT ITEM,
QTYSHP,
RQDATE
FROM tbl123
WHERE PRICE != '0'
AND SALESMN != 'WB'
AND RQDATE > (getdate() - 180)
AND ITEM = @ITEM
SELECT @ORDERCNT = count (1)
FROM #ITEMORDERDETAILS
--SELECT @ORDERCNT
SELECT @Median = (sum(QTYSHP)/@ORDERCNT)
FROM #ITEMORDERDETAILS
SELECT @Median AS 'Median'
--SELECT * from #ITEMORDERDETAILS
DROP TABLE #ITEMORDERDETAILS
RETURN @Median
END
錯誤
消息2772,級別16,狀態1,過程 f_Get_Average_Order_Size_Median,34行無法從函數中訪問臨時 表。
消息2772,級別16,狀態1,過程 f_Get_Average_Order_Size_Median,第35行無法從函數內訪問臨時 表。
消息2772,級別16,狀態1,過程 f_Get_Average_Order_Size_Median,第42行無法從函數內訪問臨時 表。
Msg 156,Level 15,State 1,Procedure f_Get_Average_Order_Size_Median,Line 46 關鍵字'SELECT'附近的語法不正確。
**無法從函數中訪問臨時表** – zimdanen
' @ table'變量可以用來代替。 –