首页 > 解决方案 > SQL多表条件检索语句

问题描述

我正在尝试从同一数据库中另一个 sqlite 表的 sqlite 表中检索数据。格式如下:

master table
--------------------------------------------------
| id         | TypeA    | TypeB      | ...     
--------------------------------------------------
| 2020/01/01 | ID_0-0   |ID_0-1      | ...
--------------------------------------------------
child table

--------------------------------------------------
| id         | Attr1    | Attr2      | ...     
--------------------------------------------------
| ID_0-0     | 112.04   |-3.45       | ...
--------------------------------------------------

我想编写一个 sqlite3 查询,它需要:

并返回一个数据框,其中包含类型的行和属性的列。当然,我可以将表读入 pandas 并在那里完成工作,但我认为它的计算量会更大,我想学习更多的 SQL 语法!

更新 到目前为止,我已经尝试过:

"""SELECT *
   FROM child 
   WHERE EXISTS
       (SELECT *
        FROM master
        WHERE master.TypeX  = Type_input
        WHERE master.dateX  = date_input)"""

然后在所有必需的 TypeX 和 dateX 上连接字符串并执行:

cur.executescripts(script)

标签: pythonsqlpandassqlite

解决方案


推荐阅读