数値型は、大きく 2 つのカテゴリに分類されます。1 つは整数で、もう 1 つは浮動小数点数または 10 進数です。
一般的に使用される整数型は int 型で、許容範囲は (-2147483648, 2147483648) です。
一般的に使用される浮動小数点数または 10 進数のタイプは、float、double、および 10 進数タイプです。
float 型 (単精度浮動小数点値);
double 型 (倍精度浮動小数点値);
10 進数型 (非常に高い精度が必要な計算で使用されます);
これらの型を使用すると、精度とここでの精度は、この値に保存された有効桁数の合計を指し、カウント方法は小数点以下の桁数を表します)
Case: 设置age为单精度浮点型,当我们插入45.696,就会四舍五入; create table data01(age float(5,2)); insert into data01 values(45.696);//结果保留两位小数,四舍五入,结果为45.70
共通文字列型には、char、varchar、text、blob 型があります。
Char 型: 固定長の文字列に使用されます。このサイズ修飾子の範囲は 0 ~ 255 で、サイズを指定します。格納される値の長さ。
varchar 型: char 型の変形であり、可変長文字列に使用され、0 から 255 の範囲のサイズ インジケーターも必要です。違いは、MySQL がこのインジケーターを処理する方法にあります。char はこれを受け取ります。 varchar 型は値の正確なサイズを扱いますが、varchar 型は値を最大値として扱い、文字列を格納するために実際に必要なバイト数のみを使用します。したがって、フィールドに格納される文字数が不明な場合は、このタイプを使用することをお勧めします。
比較的長い文字列の場合、MySQL には text と blob の 2 つのタイプが用意されており、保存するデータのサイズに応じて異なるサブタイプがあり、画像、大きなテキスト、サウンド ファイルなどのバイナリ データを保存するために使用されます。違いは、blob 型では大文字と小文字が区別されるのに対し、text 型では大文字と小文字が区別されないことです。
MySQL は、日付と年のタイプを使用して単純な日付値を記述し、時間タイプを使用して時間値を記述します。値は、区切り文字のない文字列または整数のシーケンスとして記述できます。
文字列として記述する場合、
日付型の値は区切り文字としてハイフンで区切る必要があり、一方、時刻型の値は区切り文字としてコロンで区切る必要があり、年型の値は4つの数字で格納する必要があり、MySQLとなります。自動変換:00~69の範囲の値を2000~2069の範囲に変換し、70~99の範囲の値を1970~1999の範囲に変換します。例:
Case: create table data2(showtime time,birthday date,graduation year); 001) insert into data2 values(‘14:51:02’,’2000-02-02’,2017);
002) insert into data2 names(145202,20000202,2017);
//結果は (001) と同じように書き込まれます
日付と時刻のデータ型に加えて、MySQL も混合タイプ:
datetime および timestamp データ型をサポートしており、日付と時刻を単一の値コンポーネントとして保存できます。これら 2 つのタイプは、現在の日付と時刻を含むタイムスタンプを自動的に保存するために一般的に使用され、大量のデータベース トランザクションを実行し、デバッグとレビューの目的で監査証跡を確立する必要があるアプリケーションに便利です。
許可される値、フィールドに入力できる値の範囲とタイプは、データ型を決定する際の最も直接的な要素です。このフィールドに追加されるデータ型。 ストレージ効率、特に数値型を扱う場合は、フィールドの可能な値の範囲を考慮し、この範囲に基づいて適切なサイズのデータ型を選択することも重要です。 形式と表示の要件、フィールド タイプの選択に影響するもう 1 つの重要な要素は、フィールドに保存されるデータのアプリケーション形式と表示の要件です。 データ処理要件: データ型の選択では、データ操作とアプリケーション処理の要件も考慮する必要があります。たとえば、一部のタイプは他のタイプよりもデータ操作の高速化に適しています。 並べ替え、インデックス付け、比較の要件。さまざまな基準に従って列内のすべての値を並べ替えたい場合は、これらの機能を効率的かつ最大限の柔軟性で実行できるタイプを選択する必要があります。対応するフィールドにインデックスを追加すると、検索が高速化されます。比較のタイプは、使用されるデータ型である必要があります。使用されるデータ型が比較演算をサポートし、相互に互換性があることを確認する必要があります。
以上がMySQL の高度なドリフトについての深い理解 (1)の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。