首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在MySQL中存储非常大的in

在MySQL中存储非常大的in
EN

Stack Overflow用户
提问于 2018-03-22 03:26:31
回答 1查看 124关注 0票数 1

是否有可能在MySQL中有效地存储大型in?不像bigint那么大,更像是1000 加泰罗尼亚数左右,而且至少有几百个。更有可能是数千人。存储和加载值的速度是一个优先事项。

这些数字是使用gmpy2 (Python包装器)创建的。所以,如果能以相同的格式访问存储的数字,那就太好了,但如果不能,我总是可以编写一个转换器。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-03-23 23:56:37

我会将mpz整数转换为Python (用于v2)或字节(用于v3),并将其保存为mysql中的BLOB实体。下面是使用Python2的相关gmpy2命令。

代码语言:javascript
复制
>>> import gmpy2
>>> gmpy2.mpz(1234)
mpz(1234)
>>> gmpy2.to_binary(mpz(1234))
'\x01\x01\xd2\x04'
>>> gmpy2.from_binary('\x01\x01\xd2\x04')
mpz(1234)
>>> 

gmpy2.to_binary将将任意gmpy2对象转换为二进制字符串。gmpy2.from_binary将将二进制字符串转换回gmpy2对象。对象的类型被编码为二进制字符串,因此不需要跟踪对象的类型。

免责声明:我维护gmpy2。

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

https://stackoverflow.com/questions/49420039

复制
相关文章

相似问题

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