gpt4 book ai didi

android - Android Sqlite/ORMLite 中的十六进制字符串与大整数索引

转载 作者:搜寻专家 更新时间:2023-11-01 07:56:36 25 4
gpt4 key购买 nike

我们在移动设备中存储了大量十六进制数据(例如:“2D2134F2487B0ACE08B7”),大约有 600.000 到 900.000 个条目。

这个查询很慢...

select id from 'combinations' where token = '2D2134F2487B0ACE08B7' limit 1

将 token 存储为二进制数是否有意义,以便索引比字符串比较快得多?

问题还在于 - 是否可以在 sqlite 中存储如此大的二进制数?

f.e. 
hex: 2D2134F2487B0ACE08B7
=> "00101101001000010011010011110010010010000111101100001010110011100000100010110111"

我找不到任何我能理解的东西... :/谢谢!

编辑: 大声笑...我不确定为什么我没有早点意识到...我还可以将十六进制转换为普通整数,这会节省很多 key 长度.. . 但无论如何.. 问题仍然是我是否可以在 int 中保存像“213119049475094085503159”这样的大值?

最佳答案

SQLite 的整数不能超过 64 位。

如果 token 被索引,查找会很快。

为了节省空间,您可以将值存储为 blob:

select id from combinations where token = x'2D2134F2487B0ACE08B7'

(SQLite 索引支持所有数据类型。)

关于android - Android Sqlite/ORMLite 中的十六进制字符串与大整数索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27197324/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com