0
對於員工11來說,任何想法都會降低總員工的薪水10.44,但是對於某些重新設置,其舍入爲10,即使他們都設置爲小數(8,2)向下舍入sql server 2008 r2
ALTER procedure [dbo].[hms_GetEmployeeSallaryByEmpNo]
(
@Id int
)
as
/* lets make our tempory tables */
create table #contracts
(
empno INT,
contract_id INT
)
DECLARE @contract_id int
DECLARE @totalsallary decimal(8,2)
begin
INSERT into #contracts SELECT c.emp_no,c.contract_id
FROM contract c
where c.emp_no = @Id AND c.leave_date='1900-01-01 00:00:00.000'
end
SET @totalsallary =(select SUM(salary)
from #contracts c,salary s
where s.contract_id = c.contract_id)
return @totalsallary
你已經在你的輸出參數上獲得了一個額外的'@',但我總是+1。 –
@Damien_The_Unbeliever這是一個有效的(雖然非常規)標識符。 –
@MartinSmith - true,但是他們需要在參數列表和SET語句中執行。目前,這是不一致的。此外,[不推薦](http://technet.microsoft.com/en-us/library/ms175874(v = sql.105).aspx):「某些Transact-SQL函數的名稱以符號@@)。爲避免與這些函數混淆,您不應使用以@@開頭的名稱。「 –