0

私はオンライン ストアを構築しており、製品のさまざまな寸法を指定する機能を提供したいと考えています。幅/高さ、重量など。

幅を例にとると、値を入力してから選択しますmm, cm, m

次に、アプリケーションはそれを同じ基本単位 (mm など) に変換して、アプリケーション全体で簡単に使用できるようにします。

この種のことを行うための適切なスキーマは何でしょうか? 私は次のようなことを考えていました:

id     name     factor
1      mm       1
2      cm       0.1
3      m        0.001
...

次に、$userValue / $factor = $normalized を実行できます。これにはおそらく、次の行に沿った何かを含む結合テーブルが必要になります。

id name
1  length
2  weight
...

これはこれを達成するための最良の方法ですか?

4

2 に答える 2

0

UNIXunits機能の仕組みを確認してください。これはデータ ファイルによって駆動され、いくつかの厄介な問題を回避できることを願っています。

http://www.linuxmanpages.com/man1/units.1.php

于 2012-10-04T20:39:48.893 に答える
0

浮動小数点を回避するためにできることはすべて、強くお勧めします。0.001 を float としてデータベースに格納すると、実際の値が 0.00099999999982713 になる可能性があり、意図したものからわずかではあるが刺激的な偏差が生じる可能性があります。

これらを、使用する「最小」単位の整数値として表現する方がはるかに優れています。たとえば、マイクロメートルで、すべての値をこの同等の尺度に変換します。これは、残忍な丸めエラーを回避するために、ほとんどのシステムで通貨に対して行われていることです。

于 2012-10-04T20:25:12.797 に答える