MySQL
 Computer >> コンピューター >  >> プログラミング >> MySQL

MySQLのZF(ZEROFILL)とは?カラム宣言におけるゼロ埋めの意味と使い方を解説

MySQLにおけるZF(ZEROFILL)の意味

「ZF」とは ZEROFILL の略で、MySQLのカラム宣言において数値の桁数が足りない場合に先頭を0で埋める(ゼロ埋め)ことを指します。この属性を指定すると、定義した表示幅に合わせて自動的に左側へ0が補完されます。

まず、int型のフィールドサイズを10に設定したテーブルを作成してみましょう。

mysql> create table DemoTable1332
    -> (
    -> Number int(10) ZEROFILL NOT NULL DEFAULT 0
    -> );
Query OK, 0 rows affected (0.59 sec)

レコードの挿入

次に、insertコマンドを使ってテーブルにいくつかのレコードを挿入します。

mysql> insert into DemoTable1332 values();
Query OK, 1 row affected (0.17 sec)
mysql> insert into DemoTable1332 values(1);
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable1332 values(10);
Query OK, 1 row affected (0.10 sec)
mysql> insert into DemoTable1332 values(100);
Query OK, 1 row affected (0.14 sec)
mysql> insert into DemoTable1332 values(554646);
Query OK, 1 row affected (0.09 sec)

レコードの表示

select文を使用して、テーブル内のすべてのレコードを表示します。

mysql> select * from DemoTable1332;

実行結果は以下の通りです。フィールドサイズ10に満たない数値にはゼロ埋めが適用され、たとえば549は「0000000549」のように表示されます。

+------------+
| Number     |
+------------+
| 0000000000 |
| 0000000001 |
| 0000000010 |
| 0000000100 |
| 0000554646 |
+------------+
5 rows in set (0.00 sec)

まとめ

ZEROFILL属性を付けると、指定した表示幅(この例では10桁)に満たない数値の先頭が自動的に0で埋められ、常に固定桁数で値を表示できるようになります。会員番号や伝票番号など、桁数を揃えたいデータを扱う場合に便利です。なお、ZEROFILLを指定したカラムには暗黙的にUNSIGNED属性も適用される点に注意してください。

  1. MySQLでNULLの行にデフォルト値を設定する方法|COALESCE()関数の使い方

    MySQLでNULL(空)の行に対してデフォルト値を表示・設定したい場合は、COALESCE()関数を活用するのが効果的です。COALESCE()は引数の中から最初にNULL以外の値を返す関数で、これによりNULL値を任意のデフォルト値に置き換えることができます。サンプルテーブルの作成まず、デモ用のテーブルを作成しましょう。mysql> create table DemoTable1863 ( FirstName varchar(20) ); Query OK, 0 rows affected (0.00 sec)レコードの挿入INSERTコマンドを使用して、いく

  2. MySQLでNULL値を1として表示・更新する方法

    MySQLでは、テーブル内のNULL値を別の値(たとえば「1」)に置き換えて扱いたい場面があります。この記事では、IFNULL関数とUPDATE文を組み合わせて、NULL値を1に変換する具体的な手順をサンプルコード付きで解説します。 1. サンプルテーブルを作成する まず、動作確認用のテーブルを作成します。 mysql> create table DemoTable1963 ( Counter int ); Query OK, 0 rows affected (0.00 sec) 2. レコードを挿入する INSERT文を使って、NULLを含む複数のレコードを