2012-09-22 28 views
0

字符串,這是我的查詢打印五名來自MySQL的操作

$sum = "SELECT htno, 
SUM(tm) AS tech, 
SUM(tm)/7.5 AS divi, 
SUM(credits) AS cred , 
SUM(CASE WHEN credits <= 0 THEN 1 ELSE 0 END) AS log, 
SUM(CASE WHEN credits > 0 THEN 1 ELSE 0 END) AS pass, 
SUM(CASE WHEN em >= 0 THEN 1 ELSE 0 END) AS atm, 
SUM(CASE WHEN em >= -2 THEN 1 ELSE 0 END) AS tot 
FROM jbit WHERE htno='$id'"; 

在第3行「SUM(TM)/7.5作爲迪維」查詢所賜輸出79.2544555555,但我想輸出79.25

幫助我的朋友

回答

1

你可以使用TRUNCATE():

TRUNCATE(SUM(tm)/7.5 , 2) AS divi, 

截斷會給你 '1.25' 爲 '1.259',如果你想讓它繞着它然後用:

ROUND(SUM(tm)/7.5 , 2) AS divi, 

那會給你'1.26'爲'1.259'

+0

謝謝你這麼多它的工作完美 –

1

你需要MySQL的FORMAT()

格式數量X像 '#,###,###。##。' 的格式,四捨五入以D小數位數 ,並以字符串形式返回結果。

所以,你的查詢變爲:

$sum = "SELECT htno, 
SUM(tm) AS tech, 
FORMAT(SUM(tm)/7.5, 2) AS divi, 
SUM(credits) AS cred , 
SUM(CASE WHEN credits <= 0 THEN 1 ELSE 0 END) AS log, 
SUM(CASE WHEN credits > 0 THEN 1 ELSE 0 END) AS pass, 
SUM(CASE WHEN em >= 0 THEN 1 ELSE 0 END) AS atm, 
SUM(CASE WHEN em >= -2 THEN 1 ELSE 0 END) AS tot 
FROM jbit WHERE htno='$id'"; 
+0

謝謝你這麼多,它完美的工作 –