mysql的sql语句中直接支持算术运算符
我有个mysql库
里面有个server表
其存储ip地址的是一个unsigned int(10)的变态的数据类型
其存储的数据是ip地址的
((第一字节*256+第二字节)*256+第三字节)*256+第四字节
因此,表里的ip地址数据相当的不直观
程序里倒无所谓
写个自函数转一下就可以了
但我如果要在mysql控制台、直接sql语句里显示直观ip信息呢
该怎么办呢
今天终于碰到这么个问题
翻了翻mysql文档
原来mysql直接支持算术运算符+、-、*、/,甚至连取余%都支持
再结合取整函数floor()、字串连接函数concat()
问题解决了
select concat(floor(ip/(256*256*256)), “.”, floor(ip/(256*256))%256, “.”, floor(ip/256)%256, “.”, ip%256) as ip_s, product, role, contact from server
原创文章,转载请注明: 转载自嘻嘻哈哈的部落格(blog)
本文链接地址: mysql的sql语句中直接支持算术运算符


最近评论