SQL从一个表web2py左联接两次

2024-04-29 05:51:04 发布

您现在位置:Python中文网/ 问答频道 /正文

怎么做这件事? 我有两张桌子

表1:

-id
-table2_id_1
-table2_id_2

表2:

-id
-table3_id

表3:

-id 
-table4_id
-table5_id
-table6_id

表4、表5和表6:

-id
-name
-date

主表为表1

db(db.Table1).select()

我需要两次联接Table2(列),在witch I need to join Table3(在每个Table2\u id\u 1和Table2\u id\u 2字段Table3\u id等于)中,而不是联接Table4、Table5、Table6


Tags: nameiddbdateselect桌子table2table1
1条回答
网友
1楼 · 发布于 2024-04-29 05:51:04

我不知道,如果我真的知道了,你想做什么,但是如果你只是想根据id加入表,类似的方法应该可以:

SELECT *
FROM table1 a JOIN table2 b ON (a.table2_id_1 = b.id) JOIN
     table2 c ON (a.table2_id_2 = c.id) JOIN
     table3 d ON (b.table3_id = d.id) JOIN
     table3 e ON (c.table3_id = e.id) JOIN
     table4 f ON (d.table4_id = f.id) JOIN 
     table5 g ON (d.table5_id = g.id) JOIN
     table6 h ON (d.table6_id = h.id) JOIN
     table4 i ON (e.table4_id = i.id) JOIN 
     table5 j ON (e.table5_id = j.id) JOIN
     table6 k ON (e.table6_id = k.id)

相关问题 更多 >