[前][次][番号順一覧][スレッド一覧]

mysql:13915

From: mailist <mailist <mailist@xxxxxxxxxx>>
Date: Wed, 25 Apr 2007 21:32:45 +0900
Subject: [mysql 13915] TRUNCATEで掛け算

鈴木健です。
MySQLで在庫管理をしていますが、TRUNCATEを使うと掛け算が正しくなりません。
どうしてでしょうか?

たとえば、priceが4380、tdiscountが0.95であるとして、
SELECT (price * tdiscount)
とすると、値は4161と正しいのですが、

SELECT TRUNCATE((price * tdiscount),3)
とすると、4160.999となります。

priceフィールドのデータ型はDecimalとIntで試しましたが結果は同じでした。
TRUNCATEを入れた目的は、小数点以下の数字を切るためです。
(price * tdiscount)で4161.000になった値の小数点以下を切るのがTRUNCATEだ
と思うのですが、間違っているでしょうか?


[前][次][番号順一覧][スレッド一覧]

->   13915 2007-04-25 21:32 [mailist <mailist@xxx] TRUNCATEで掛け算                        
     13916 2007-04-25 21:59 ┣[Tatematsu <tatemax@x]                                       
     13917 2007-04-25 22:09 ┗[忠犬 KEN公 <ken_ken_]