MySQL 查询如何将 IP 地址从同一表的 varchar 列复制到整数?
为此,你可以使用 INET_ATON()。我们先创建一个 -
mysql> create table DemoTable1404 -> ( -> IpAddress varchar(40) -> ); Query OK, 0 rows affected (1.02 sec)
使用 insert 在表中插入一些记录 -
mysql> insert into DemoTable1404 values('192.168.120.0');
Query OK, 1 row affected (0.43 sec)
mysql> insert into DemoTable1404 values('192.168.120.20');
Query OK, 1 row affected (0.60 sec)
mysql> insert into DemoTable1404 values('224.0.0.0');
Query OK, 1 row affected (0.42 sec)使用 select 从表中显示所有记录 -
mysql> select * from DemoTable1404;
这将产生以下输出 -
+----------------+ | IpAddress | +----------------+ | 192.168.120.0 | | 192.168.120.20 | | 224.0.0.0 | +----------------+ 3 rows in set (0.00 sec)
以下是将 IP 地址从 varchar 列复制到同一中的查询 -
mysql> select inet_aton(IpAddress) from DemoTable1404;
这将产生以下输出 -
+----------------------+ | inet_aton(IpAddress) | +----------------------+ | 3232266240 | | 3232266260 | | 3758096384 | +----------------------+ 3 rows in set (0.00 sec)
不,让我们证明转换是否成功 -
mysql> select inet_ntoa('3232266240');这将产生以下输出 -
+-------------------------+
| inet_ntoa('3232266240') |
+-------------------------+
| 192.168.120.0 |
+-------------------------+
1 row in set (0.27 sec)
广告
数据结构
网络
RDBMS
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP