2012-05-13 24 views
1

データベースのユーザーの身長と体重を取得する必要があります。 UIでは、高さをセンチメートルとインチで指定するオプションを提供する必要があります。また、重量、キログラム、ポンドについても指定する必要があります。後で、私がユーザーを表示するとき、身長と体重を1単位の測定単位で表示する必要があります(たとえば、すべての場合はcmsまたはinsのいずれか)。MySQL:身長/体重情報の保存方法は?

このデータを保存するにはどうすればよいですか?高さ(高さ単位、高さ単位など)と重量(例:重量値、重量単位)の2つのデータを保存して、入力したユーザーのデータを保存しますか?データを統一単位で表示する必要がある場合は、SQLで変換を行います。

保存する前にデータを変換する必要がありますか?後でユーザーデータを表示する必要があるときに会話を行う必要はありませんか?

ところで、実際のユーザーにデータを表示するときは、ユーザーが選択したのと同じ単位である必要があります。

+0

で正しい数値を与えるのだろうか? 1.ユーザーが入力したものを正確に再生できるか?または2.データベースの高さと重量を簡単に比較できるか?または3.すべてのデータを好きな単位で任意のユーザーに表示できること。 – joshp

答えて

7

他の理由がない場合は、1つの場所に1つの形式で格納し、後でコード内で常に標準の変換を使用してください。データベースはビジネスルールではなく、データを保存する必要があります。

+0

180cmと72インチは両方ともデータです。私はこれをビジネスルールと見なしません。挿入の前に変換を行うと、後でユーザーに正確に変換できないことがあります。 – StackOverflowNewbie

+1

はい、どちらもデータですが、同じではありません。データベースにビジネスのための変換ルールを知らせるように依頼しています。あなたがそれを正確に保管しているならば、後でそれをユーザーの好みに変換することができない理由はありません。それはビジネスルールです。 – GDP

0

1つの高さと1つの幅しか保存しないことをお勧めします。選択した単位を使用してください。単位変換は単一の乗算であり、本質的にゼロコストです。

あなたは単位テーブルをも持つことができ、かつシンプルなインナーが計算フィールドでの参加は、あなたがより重要である単一のクエリ(だけでなく、INSERT/UPDATEを選択)

+0

だから、私はメートル法を選択します。すべての高さをCMSで保存します。すべての体重をkgで保存してください。後で、身長をインチで保存した人 - 私はCMSから元に戻す必要があります。これは彼にとっては正確ではないかもしれません。それは本当に私がすべきことですか? – StackOverflowNewbie

+2

はい、それは次のようなものでなければなりません:1つの除算と1回の乗算を適用した単精度浮動小数点は、重量や高さのニーズに応じてより良い精度を提供します。体重が数ミリグラムで間違っている場合は、気にしないでください。 –

+0

ユーザーがデータをどのように入力したかを正確に保存してから、同じ測定単位を使用してすべてのユーザーを表示する必要があるときに変換を実行するのはどうですか? – StackOverflowNewbie

関連する問題