首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >合并或加入熊猫数据与sqlite表?

问合并或加入熊猫数据与sqlite表?
EN

Stack Overflow用户
提问于 2020-03-13 16:57:11
回答 1查看 994关注 0票数 0

我有一个大型sqlite表,不应该同时在内存中加载列['a','b','c',...]。它有一个针对a和b列的复合索引。

代码语言:javascript
复制
a    b     c   ....
1    34    45656 .....
54   175   34323 ....
102  12121  3029 ....

现在,我希望提取具有a和b的特定值的行,因此我正在考虑进行如下查询

SELECT * FROM table WHERE a IN <insert tuple of a vals> AND b IN <insert tuple of b vals>

然而,有成千上万这样的组合a和b,我想检查。我可以创建一个包含以下组合的熊猫数据库:

代码语言:javascript
复制
>>> df
    a    b
    102  12121
    234  879789
    ...  ...

简单地加入或合并这两个表可能更简单。

但是,我不想将另一个表添加到sqlite.db文件中,因为我可以创建不同的df,而且我也不想继续膨胀我的sqlite数据库文件大小。是否有方法在sqlite中创建临时表以进行合并?或者有办法通过熊猫做到这一点?

EN

回答 1

Stack Overflow用户

发布于 2020-03-14 14:49:00

因为您在a和b上有索引,所以查询a和b的每一个组合都比在Pandas或SQLite中创建新的数据结构和执行连接更有效。

您可以遍历a和b的每一个组合和查询,也可以在一个查询中执行,但是您受到SQLITE_MAX_SQL_LENGTH的限制

SELECT * FROM table WHERE (a = <a1> AND b = <b1>) OR (a = "a2" AND b = <b2>) ...

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

https://stackoverflow.com/questions/60674462

复制
相关文章

相似问题

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