| Meta Type | Type | Storage Size | Signed Range | Unsigned Range |
|---|---|---|---|---|
| I1 | TINYINT | 1 byte | -128 to 127 | 0 to 255 |
| I2 | SMALLINT | 2 bytes | -32,768 to 32,767 | 0 to 65,535 |
| I4 | MEDIUMINT | 3 bytes | -8,388,608 to 8,388,607 | 0 to 16,777,215 |
| I | INT / INTEGER | 4 bytes | -2,147,483,648 to 2,147,483,647 | 0 to 4,294,967,295 |
| I8 | BIGINT | 8 bytes | -9,223,372,036,854,775,808 to 9,223,372,036,854,775,807 | 0 to 18,446,744,073,709,551,615 |
By default, integers are SIGNED (can store negative and positive values). Adding UNSIGNED allows only non-negative values but doubles the positive range.
Use the smallest type that fits your data to save storage and improve performance.