आपका मतलब इस तरह है:
select
a.project_id,
b.list_id,
c.item_id
from
projects a
join lists b
on a.project_id=b.project_id
join items c
on b.list_id=c.list_id
आउटपुट कुछ इस तरह होगा:
project_id | list_id | item_id
1 | 5 | 45
1 | 5 | 46
1 | 8 | 12
या क्या आप इसके सभी हिस्सों को एक ही पंक्ति में वापस करना चाहते हैं?
यदि आप एक पंक्ति चाहते हैं, तो आप निम्न की तर्ज पर कुछ कर सकते हैं:
select
a.project_id,
group_concat(b.list_id) as listIDs,
group_concat(c.item_id) as itemIDs
from
projects a
join lists b
on a.project_id=b.project_id
join items c
on b.list_id=c.list_id
लेकिन यह सभी समूहीकृत सामग्री से निपटने के लिए PHP में अधिक गड़बड़ हो जाएगा।
आउटपुट कुछ इस तरह होगा:
project_id | list_id | item_id
1 | 5,8 | 45, 46, 12
आप दोनों को मिक्स एंड मैच भी कर सकते हैं, शायद दोनों दुनिया के सर्वश्रेष्ठ पाने के लिए:
select
a.project_id,
b.list_id as listIDs,
group_concat(c.item_id) as itemIDs
from
projects a
join lists b
on a.project_id=b.project_id
join items c
on b.list_id=c.list_id
आउटपुट कुछ इस तरह होगा:
project_id | list_id | item_id
1 | 5 | 45, 46
1 | 8 | 12