Как запросить дочерние данные в случае незнания отцовских данных заранее в sqlalchemy? - PullRequest
0 голосов
/ 07 декабря 2018

У меня есть две таблицы.Я хочу получить конкретные данные для показа в Интернете.

table1                table2
+-----+------+-----+  +-----+-------+
| Case| Name | PID |  | PID | INFO  |
+-----+------+-----+  +-----+-------+
|  1  | aaa  | 123 |  | 123 | info1 |
|  1  | bbb  | 456 |  | 123 | info2 |
|  1  | ccc  | 789 |  | 456 | info3 |
+-----+------+-----+  | 456 | info4 |
                      | 789 | info5 |
                      +-----+-------+

Я хочу получить INFO данные и собрать их вместе.Сначала я выбираю PID, где Case = 1:

pid_data = session.query(table1).filter(table1.case==1).all()

Но когда я пытаюсь запросить INFO из table2, возникает проблема.

info_data = session.query(table2.info).filter(table2.PID==table1.PID).all()

Этоне работает.Может ли кто-нибудь дать мне несколько советов по преодолению этой проблемы?Ниже приведен вывод, который я хочу показать в Интернете.

+------+------+-----+-------+
| Case | Name | PID | Info  |
+------+------+-----+-------+
|    1 | aaa  | 123 | info1 |
|      |      |     | info2 |
|    1 | bbb  | 456 | info3 |
|      |      |     | info4 |
|    1 | ccc  | 789 | info5 |
+------+------+-----+-------+
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...