sql >> データベース >  >> RDS >> Oracle

Oracle ディクショナリ ビューの数値データ型と整数データ型の違い

    私が見つけた最良の説明はこれです:

    INTEGER と NUMBER の違いは何ですか?いつ NUMBER を使用し、いつ INTEGER を使用する必要がありますか?ここでコメントを更新したかっただけです...

    NUMBER は入力したとおりに保存されます。スケールは -84 ~ 127 です。ただし、INTEGER は整数に丸められます。 INTEGER の位取りは 0 です。INTEGER は NUMBER(38,0) と同等です。つまり、INTEGER は制約付きの数値です。小数点以下は四捨五入されます。しかし、NUMBER は制約されていません。

    • INTEGER(12.2) => 12
    • INTEGER(12.5) => 13
    • INTEGER(12.9) => 13
    • INTEGER(12.4) => 12
    • NUMBER(12.2) => 12.2
    • NUMBER(12.5) => 12.5
    • NUMBER(12.9) => 12.9
    • NUMBER(12.4) => 12.4

    INTEGER は常に NUMBER より遅くなります。整数は制約が追加された数値であるため。制約を適用するには、追加の CPU サイクルが必要です。私は違いを見たことがありませんが、INTEGER 列に数百万のレコードをロードすると違いがあるかもしれません。入力が整数であることを確認する必要がある場合は、INTEGER が最適なオプションです。それ以外の場合は、NUMBER データ型に固執できます。

    リンク はこちら



    1. DBCAデータベースの作成が正しくありませんREMOTE_LISTENER

    2. 2つのタイムスタンプ間の時間を計算する方法(PostgreSQL)

    3. ユーザーに対して SQL Server Management Studio を無効にする方法

    4. MySQLの用語の制約と外部キーの違いは?