首页 > 解决方案 > 如何将此 SQL 转换为 Django 数据库请求?

问题描述

select * from first_table as ft, second_table as st where ft.user_id = st.user_id

上面的 sql 有两个表,它们具有名为“user_id”的相同列 - 我想获得连接两个表的结果,但不确定如何将我知道的 sql 转换为 Django 可以识别的东西。

编辑:(更多信息)有一个用户表,其 ID 作为外键存储在 first_table 和 second_table 中作为 user_id。我想根据 user_id 加入 first_table 和 second_table 而不必查询 users 表。

标签: pythonsqldjango

解决方案


如果您想要在 second_table 中具有相同 user_id 的 first_table 行(连接)

sec= SecondTable.objects.all() 查询集 = FirstTable.objects.filter(user_id__in=psobjs.values('sec'))

现在,如果您想要 FirstTable 和 SecondTable 的数据,您可能需要重新考虑您的模型


推荐阅读