आपको एक रिकर्सिव जॉइन की आवश्यकता है जो MySQL समर्थन नहीं करता है। केवल एक चीज जो आप कर सकते हैं वह है गहराई का अधिकतम स्तर निर्धारित करना (मैं आपके मामले में यह 1 क्योंकि आपके पास p->c है) और इसके साथ आप आवश्यक जुड़ने की संख्या निर्धारित कर सकते हैं:
अधिकतम स्तर की गहराई =स्वयं-जुड़ने की संख्या :
SELECT
p.id as parent_id,
p.name as parent_id,
c1.id as child_id,
c1.name as child_name
FROM
my_table p
LEFT JOIN my_table c1
ON c1.parent = p.id
WHERE
p.parent=0
उदाहरण के लिए यदि आपकी गहराई का अधिकतम स्तर 3 था तो आपको 3 सेल्फ-जॉइन की आवश्यकता होगी:
SELECT
p.id as parent_id,
p.name as parent_id,
c1.id as child_id_1,
c1.name as child_name_1,
c2.id as child_id_2,
c2.name as child_name_2,
c3.id as child_id_3,
c3.name as child_name_3
FROM
my_table p
LEFT JOIN my_table c1
ON c1.parent = p.id
LEFT JOIN my_table c2
ON c2.parent = c1.id
LEFT JOIN my_table c3
ON c3.parent = c2.id
WHERE
p.parent=0