【发布时间】:2019-07-12 22:35:06
【问题描述】:
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 表。
【问题讨论】:
-
今日提示:切换到现代、明确的
JOIN语法。更容易编写(没有错误),更容易阅读(和维护),并且在需要时更容易转换为外连接。 -
谢谢,我会考虑使用 JOIN 语法。关于如何转换我在上面尝试做的但以 Django 可以理解的格式的任何想法?
-
如果没有看到你的模型,这是不可能回答的。您的 ForeignKeys 是如何定义的?
-
有一个users表,其id作为外键存储在first_table和second_table中都是user_id。我想根据 user_id 加入 first_table 和 second_table 而不必查询 users 表。