本文章介绍了关于sql 在查询语句中将整数转为ip字符串实现语句,有需要的同学可以参考一下下本文章
数据表的结构是——
代码如下 复制代码
create table [dbo].[ac_mainctls_new] (
[id] [int] null ,
[ctlip] [bigint] null ,
[ctlname] [char] (30) collate chinese_prc_ci_as null ,
)
其中ctlip是设备的ip地址,以整数方式存储。
虽然可以用程序将整数转为ip字符串,但多了一道工序有点麻烦。于是我想直接在sql查询语句中将其转为ip字符串。
经过思索与调试,我完成了该查询语句——
代码如下 复制代码
select cast(ctlip / 0x1000000 as varchar(3)) + '.' + cast(ctlip / 0x10000 % 0x100 as varchar(3)) + '.' + cast(ctlip / 0x100 % 0x100 as varchar(3)) + '.' + cast(ctlip % 0x100 as varchar(3)) as itr, *from ac_mainctls_new
复制代码
查询结果为——
ipstr ctlip
代码如下 复制代码
192.168.10.32 3232238112
192.168.10.35 3232238115
192.168.10.21 3232238101
192.168.10.19 3232238099
验证通过。