MySQL在许多表中嵌套连接

时间:2018-03-27 08:46:30

标签: mysql sql join nested-query

我有事务表,transaction_properties,transaction_inventories。库存。

transaction_ids

我的任务是根据我的属性ID获取所有事务。 property_id从库存中获取来自transaction_inventory的数据,也从transaction_properties获取数据,最后我得到所有transaction#username表中获取数据。 请不要考虑更改表架构。这种风格是这个项目必须的。

2 个答案:

答案 0 :(得分:0)

检查以下查询:

select inv.*,t.*,tran_pro.*,tran_inv.* from inventories as inv 
left join on transation as t on t.id on tran_pro.transtaion_id
left join on transaction_properties as tran_pro on t.id = tran_pro.transaction_id
left join on transaction_invertory as tran_inv on t.id = tran_inv.transaction_id
where inv.property_id = '' 

注意:将所有ID保留为主键

答案 1 :(得分:0)

我不知道,如果您试图解决问题或查找联接的工作方式,那应该相当简单。除非我遗漏任何其他细节。

select t.id, t.name, invt.id, tp.property_id from inventories invt inner join transactions_inventory ti on invt.id = ti.inventory_id inner join transaction_properties tp on tp.transaction_id = ti.transaction_id inner join transactions t on t.id = tp.transaction_id