2016-09-14 40 views
0

我正在爲它使用sql開發Garry Mod(GLua)的銀行系統。我想創建一個「利」,增加了一個百分比,每一個球員每一分鐘: SQL查詢是這個:設置地板/輪值sql值

UPDATE 
    darkrp_player 
SET 
    bank = bank * "..multiplier 

這是它返回運行在DBBrowser該查詢時:

no such function: floor: UPDATE darkrp_player SET bank = floor(bank * 1.25) 

乘數變種是(利潤/ 100)+ 1倍的利潤是另一個變種

所以我的問題是,每次我運行該查詢,每家銀行都排滿了小數的,例如:

profit = 25 
--before query: 
'bank' = 2 
--after query: 
'bank' = 2.5 

我的問題是:我如何設置樓層到我設置爲'銀行'的值?我能得到大家的「銀行」值,並將其設置一個接一個,但是這將是真的很複雜......所以,我在找像

UPDATE 
    darkrp_player 
SET 
    bank = floor(bank * "..multiplier..")" 

我很抱歉,如果你不明白有些事情,你可以問我與我的問題有關的任何事情,我很樂意回答你。謝謝!

+1

'地板()'作品。你試過了嗎? –

+0

當然!我試過了:SET bank = floor(bank * multiplier) –

+0

它返回給我:沒有這樣的函數:floor:UPDATE darkrp_player SET bank = floor(bank * 1.25) –

回答

0

如果有內置的服務器上沒有FLOOR功能,試試這個:

SELECT CAST('67.896' AS int), CAST('5.57' AS int) 
+0

問題是我不想SELECT,我想SET –

+1

@AlexParedes - 這是一個例子 - 如果它有效,試試吧用它來設置。 – Hogan

+0

@AlexParedes UPDATE darkrp_player SET bank = CAST(CAST(bank *「.. multiplier AS as decimal)AS int) –

-2
--declaring variable table for example 
declare @x table (value real) 

--inserting some dummy values in variable table 
insert into @x (value) 
select '12.45' 
union 
select '56.789' 

select * from @x 

--updating variable table values using floor function 
--floor function Returns the largest integer less than or equal to the specified numeric expression 
update @x set value = floor(value) 

select * from @x 
+0

謝謝你的回答,但我什麼也沒有理解...... –