mysql如何存储超过64位的二进制串?

ispotato 2010-12-31 09:03:18
mysql的bit类型最长是64位,但现在需要存储200位长的01串,如何处理?

请各位高手详细说明,谢谢!
...全文
163 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
ACMAIN_CHM 2010-12-31
  • 打赏
  • 举报
回复
[Quote]谢谢!如果这个串是用来作为该记录项的索引标记项,不知道哪种方案速度更快 或更方便操作?谢谢![/Quote]别人很难猜出你的 操作 是什么,所以自然无从评论。


问题说明越详细,回答也会越准确!参见如何提问。(提问的智慧
iihero 2010-12-31
  • 打赏
  • 举报
回复
使用BINARY(201)即可
rart2008 2010-12-31
  • 打赏
  • 举报
回复
三种方案你都试试,然后都去做相同的查询,就知道哪个快了
ispotato 2010-12-31
  • 打赏
  • 举报
回复
谢谢!如果这个串是用来作为该记录项的索引标记项,不知道哪种方案速度更快 或更方便操作?谢谢!
ACMAIN_CHM 2010-12-31
  • 打赏
  • 举报
回复
三种方案

1. 索引使用VARCHAR,以字符串形式存储 101001010101110
2. 使用多个BIGINT,或者多个BIT(64)
3. 使用BINARY

各有优缺点。看你的具体应用来选择一种。
ACMAIN_CHM 2010-12-31
  • 打赏
  • 举报
回复
[Quote]做逐位的比较[/Quote]这个你还是用
2. 使用多个BIGINT,或者多个BIT(64)
ispotato 2010-12-31
  • 打赏
  • 举报
回复
为了快速检索到记录项,表的每条记录都有一个用01串标识其特征的列,不同记录的01串可以相同,
但是长度不能短,每一位置都必须存在,(假设是8位)必须是00001000和00000000,等这样的类型。

然后为该列建立索引。

主要操作就是:用相同长度的01串来进行查询,挑出相同的串,也可能做逐位的比较。

56,687

社区成员

发帖
与我相关
我的任务
社区描述
MySQL相关内容讨论专区
社区管理员
  • MySQL
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧