我使用VARBINARY(16)
数据类型存储IP.我只想 Select ipv4 IP.是否可以按VARBINARY
(或VARCHAR
)中使用的长度过滤色谱柱?像这样的
SELECT INET6_NTOA(`ip`) from `TABLE` where BYTESLENGHT(`ip`) = 4
我使用VARBINARY(16)
数据类型存储IP.我只想 Select ipv4 IP.是否可以按VARBINARY
(或VARCHAR
)中使用的长度过滤色谱柱?像这样的
SELECT INET6_NTOA(`ip`) from `TABLE` where BYTESLENGHT(`ip`) = 4
我会使用LENGTH()
,它以字节为单位返回字符串的长度.它支持VARCHAR或VARBINARY.
mysql> create table mytable (ip varbinary(16));
mysql> insert into mytable set ip = inet6_aton('192.168.1.1');
mysql> insert into mytable set ip = inet6_aton('fdfe::5a55:caff:fefa:9089');
mysql> select length(ip) from mytable;
+------------+
| length(ip) |
+------------+
| 4 |
| 16 |
+------------+