私の質問は:T-SQLでdecimal
またはnumeric
データ型と組み合わせてモジュロ演算子%
を使用するには、有効な操作SQL Serverの2008+:モジュロと小数/数値データ型
です。
限り、私はそれをテストしてきたように動作しているようですが、これは0.0
をもたらすために、実際にSELECT 2.0 % 0.4
ようdecimal
値に対して意図された動作であり、私はそれに頼ることができますか?
私の考えでは、このようなクエリを作成することでした。
SELECT itemNumber
FROM item i
JOIN orderItem oi ON i.ID = oi.itemID
WHERE oi.orderID = @orderID
AND oi.amount % i.amount <> 0.0000
私は動作するように思われること、実際に驚きました。これは意図された動作ですか?
私はそれが整数値のためだけに働くことを期待していて、何か別のものを使う準備ができていました。背景については
:我々はパッケージ化された形で計で測定された私たちのものの一部を販売しています。データベースのデータフィールドはnumeric(18,4)
の値であり、一部の事前にパッケージ化された単位は小数値にパッケージ化されています。今度は、その商品が包装されたユニットの倍数であるかどうかを確認する手続きを作成しなければなりません。適切な量の包装済み商品を送ることができるかどうかを判断してください。
: たぶん、あなたは全体の項目数を取得するには
CEILING
機能を使用する必要がありますか? – Adwaenyth@Adwaenythそれはあなたの環境に依存します、もしあなたがtonnsで 'amount'を測定するなら - あなたはグラムを使うならば、右側にもっと数字を加えるべきです、私はそれが十分だと思います – Backs
実際にはメートルです。 – Adwaenyth