On this page
The INET
data type stores an IPv4 or IPv6 address.
Syntax
A constant value of type INET
can be expressed using an
interpreted literal, or a
string literal
annotated with
type INET
or
coerced to type
INET
.
INET
constants can be expressed using the following formats:
Format | Description |
---|---|
IPv4 | Standard RFC791-specified format of 4 octets expressed individually in decimal numbers and separated by periods. Optionally, the address can be followed by a subnet mask. Examples: '190.0.0.0' , '190.0.0.0/24' |
IPv6 | Standard RFC8200-specified format of 8 colon-separated groups of 4 hexadecimal digits. An IPv6 address can be mapped to an IPv4 address. Optionally, the address can be followed by a subnet mask. Examples: '2001:4f8:3:ba:2e0:81ff:fe22:d1f1' , '2001:4f8:3:ba:2e0:81ff:fe22:d1f1/120' , '::ffff:192.168.0.1/24' |
Note:
IPv4 addresses will sort before IPv6 addresses, including IPv4-mapped IPv6 addresses.Size
An INET
value is 32 bits for IPv4 or 128 bits for IPv6.
Example
> CREATE TABLE computers (
ip INET PRIMARY KEY,
user_email STRING,
registration_date DATE
);
> SHOW COLUMNS FROM computers;
column_name | data_type | is_nullable | column_default | generation_expression | indices | is_hidden
--------------------+-----------+-------------+----------------+-----------------------+-----------+------------
ip | INET | false | NULL | | {primary} | false
user_email | STRING | true | NULL | | {primary} | false
registration_date | DATE | true | NULL | | {primary} | false
(3 rows)
> INSERT INTO computers
VALUES
('192.168.0.1', '[email protected]', '2018-01-31'),
('192.168.0.2/10', '[email protected]', '2018-01-31'),
('2001:4f8:3:ba:2e0:81ff:fe22:d1f1/120', '[email protected]', '2018-01-31');
> SELECT * FROM computers;
+--------------------------------------+--------------------------+---------------------------+
| ip | user_email | registration_date |
+--------------------------------------+--------------------------+---------------------------+
| 192.168.0.1 | [email protected] | 2018-01-31 00:00:00+00:00 |
| 192.168.0.2/10 | [email protected] | 2018-01-31 00:00:00+00:00 |
| 2001:4f8:3:ba:2e0:81ff:fe22:d1f1/120 | [email protected] | 2018-01-31 00:00:00+00:00 |
+--------------------------------------+--------------------------+---------------------------+
Supported casting and conversion
INET
values can be cast to the following data type:
STRING
- Converts to format'Address/subnet'
.