首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >mysql中将mac adress从varchar转换为bigint(6)

mysql中将mac adress从varchar转换为bigint(6)
EN

Stack Overflow用户
提问于 2015-08-10 11:47:49
回答 2查看 1.8K关注 0票数 0

我需要将mysql数据库中的许多mac地址从varchar格式转换为bigint(6)。我知道mac地址C404158996CD -是215521820251853。做这件事的适当功能是什么?为此,我尝试使用十六进制(),但是对于相同的mac地址,它返回433430343135383939364344。

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2015-08-10 12:01:00

C404158996CD是十六进制数,215521820251853是十进制。十六进制(215521820251853)= C404158996CD,而不是相反。

您需要CONV('C404158996CD', 16,10) (“将'C404158996CD‘从基数16转换为基数10")

票数 2
EN

Stack Overflow用户

发布于 2015-08-10 12:02:46

看看这个教程。在这里,他们正在将MAC地址转换为bigint。你可以这样做:

代码语言:javascript
运行
复制
select
concat (left (b.mh, 2),':',mid(b.mh,3,2),':',mid(b.mh,5,2),':',mid(b.mh,7,2),':',mid(b.mh,9,2),':',mid(b.mh,11,2))
from (
    select lpad (hex (a.mac_as_int), 12, '0') as mh
    from (
        select 1234567890 as mac_as_int
    ) a
) b

这个stackoverflow的答案正在详细解释它。

或者,您也可以使用MySQLconv函数。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/31918730

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档