:
ANSI/ISO SQL92 ,MySQL TINYINT、MEDIUMINT BIGINT。
MySQL , ( INT(4))。
, ,
, 。
ZEROFILL , 。
, INT(5) ZEROFILL, 4 00004。
, , MySQL (join) ,
, ,MySQL 。 ( )
:
M indicates the maximum display width for integer types. The maximum legal display width is 255.
Display width is unrelated to the range of values a type can contain
1 :
mysql> alter table b modify b int(2) ZEROFILL ;
Query OK, 2 rows affected (0.06 sec)
Records: 2 Duplicates: 0 Warnings: 0
mysql>
mysql>
mysql> select * from b;
+------+---------+------+
| a | b | c |
+------+---------+------+
| NULL | 01 | NULL |
| NULL | 1111111 | NULL |
+------+---------+------+
2 rows in set (0.00 sec)
2 :
mysql> select * from s left join b on s.f = b.b;
+---------+------+------+---------+------+
| f | a | a | b | c |
+---------+------+------+---------+------+
| 2 | 4 | NULL | NULL | NULL |
| 3 | 4 | NULL | NULL | NULL |
| 4 | 5 | NULL | NULL | NULL |
| 5 | 2 | NULL | NULL | NULL |
| 1111 | 1 | NULL | NULL | NULL |
| 1111111 | NULL | NULL | 1111111 | NULL |
+---------+------+------+---------+------+
6 rows in set (0.00 sec)
mysql> select * from b;
+------+---------+------+
| a | b | c |
+------+---------+------+
| NULL | 01 | NULL |
| NULL | 1111111 | NULL |
+------+---------+------+
2 rows in set (0.00 sec)
mysql> select * from s;
+---------+------+
| f | a |
+---------+------+
| 2 | 4 |
| 3 | 4 |
| 4 | 5 |
| 5 | 2 |
| 1111 | 1 |
| 1111111 | NULL |
+---------+------+
6 rows in set (0.00 sec)