[解決済み] 統計データの保存には、DECIMAL、FLOAT、DOUBLEのどれが必要ですか?
質問
私は遊びで、でも真剣に取り組みたいと思い、様々なテストをホストするサイトを作っています。これらのテストで、私は統計的なデータを収集することを望んでいます。
データの一部には、テストが時間通りに完了した割合が含まれます。私はテストのパーセンテージを簡単に計算することができますが、私は、完了時のテストに関するさまざまな異なる値を格納するように、真のデータが返されることを望みます。
私の質問は、もし私が真の統計的データを必要とするならば、MYSQLにFLOAT、DOUBLEまたはDECIMALとしてそれらを格納すべきなのか、ということです。
私は、次のようなMYSQLの関数を利用したいと思います。
AVG()
と
LOG10()
と同様に
TRUNCATE()
. MYSQL が挿入した値に基づいて真のデータを返すには、データベース・カラムの選択肢として何を使用すればよいのでしょうか。
いくつかの数値は、10、10.89、99.09、または単に 0 のような浮動小数点数であったり、そうでなかったりするので、私は質問します。 しかし、私は、真で有効な統計データを返したいのです。
このために浮動小数点数の数学に頼ることができますか。
EDIT
私はこれが一般的な質問であることを知っていて、私は広範囲に申し訳ありませんが、私のような非数学者のために、また私はMYSQLの専門家ではありません、私はこの分野の専門家の意見が欲しいです。
私は自分の研究を行いましたが、まだこの問題についての判断が鈍っているように感じます。私の質問がトピックから外れていたり、このサイトに適していない場合は、再度謝罪します。
どのように解決するのですか?
これは リンク は、あなたが探しているものを説明するのに良い仕事です。 以下はその内容です。
これら3つの型はすべて、次のパラメータ(size, d)で指定することができます。ここで、sizeは文字列の合計サイズ、dは精度を表します。例:1234.567のような数値を格納する場合、データ型をDOUBLE(7, 3)に設定します。7は全体の桁数、3は小数点以下の桁数です。
FLOATとDOUBLE、どちらも浮動小数点数を表します。FLOATは単精度で、DOUBLEは倍精度の数値です。0から23の精度の場合、4バイトの単精度のFLOATカラムになります。24から53の精度の場合、8バイトの倍精度DOUBLEカラムになります。FLOATは小数点以下約7桁、DOUBLEは小数点以下14桁までの精度です。
Decimalの宣言と機能はDoubleと似ています。しかし、浮動小数点値と10進数(数値)値には1つ大きな違いがあります。DECIMALデータ型は、正確な数値を保存するために使用され、精度は求められませんが、正確で正確な値が必要です。10進データ型は最大65桁まで保存でき、小数点以下は30桁まで保存できます。
ですから、最も正確で精密な値のためには、Decimalが最良の選択肢でしょう。
関連
-
[解決済み】文字列からuniqueidentifierに変換する際に変換に失敗する - 2つのGUIDの場合
-
MySQLの一般的な分割ライブラリおよび分割テーブルスキームの概要
-
[解決済み] どのトランザクションが「テーブルメタデータのロック待ち」状態を引き起こしているかを確認するにはどうすればよいですか?
-
[解決済み] .NETでのdecimal, float, doubleの違い?
-
[解決済み] ブーリアン値を格納するために使用するMySQLデータ型
-
[解決済み] 通貨を表すのにDoubleやFloatを使ってはいけないのですか?
-
[解決済み] C#でDecimalをDoubleに変換する方法は?
-
[解決済み] javascriptで小数点以下2桁の浮動小数点を解析する方法は?
-
[解決済み】ActiveRecordのFloatとDecimalの比較
-
[解決済み】10進数の代わりにdoubleを使うべき時は?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
MySQLのWhereの使用方法について説明します。
-
MySQLはこのようなUpdateステートメントを書くべきではありません
-
[解決済み] datetimeの挿入時に文字列から日付や時刻を変換すると、変換に失敗する
-
[解決済み] 親の行を削除または更新できない:外部キー制約が失敗する
-
[解決済み】文字列からuniqueidentifierに変換する際に変換に失敗する - 2つのGUIDの場合
-
mysql5.7のインストールと、無料・長期利用を目的としたNavicateの導入プロセスについて
-
MySQLでテーブルを削除します。親行が削除または更新できません: 外部キー制約に失敗しました。
-
[解決済み] なぜ SQLAlchemy の count() は生のクエリよりずっと遅いのでしょうか?
-
[解決済み] .NETでのdecimal, float, doubleの違い?
-
[解決済み] utf8_general_ciとutf8_unicode_ciの違いは何ですか?