Я пытаюсь получить данные из таблицы 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, который принимает:
- Дата D присутствует в master.id
- Список типов, присутствующих в столбцах мастера
- Список атрибутов, присутствующих в дочерних столбцах
и возвращающий фрейм данных со строками типов и столбцами атрибутов. Конечно, я мог бы просто прочитать таблицы в 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)