mysql: कई लोगों के लिए स्वयं और जुड़ें - mysql

मेरे पास यह टेबल है:

id   name     parent_id
0    fruit    NULL
1    place    NULL
2    apple    0
3    orange   0
4    beach    1
5    forest   1

और मैं इस तरह का परिणाम प्राप्त करना चाहता हूं:

id   name    name
0    fruit   NULL
1    place   NULL
2    apple   fruit
3    orange  fruit
4    beach   place
5    forest  place

मैंने इसके साथ प्रयास किया है:

SELECT * FROM foobar LEFT OUTER JOIN foobar c ON c.parent_id = c.id

लेकिन यह काम नहीं करता है।

उत्तर:

जवाब के लिए 2 № 1

आपके में JOIN आप शामिल हो रहे हैं c सेवा मेरे अपने आप। आपको शामिल होना है c सेवा मेरे foobar। इसे इस्तेमाल करे:

SELECT foobar.id, foobar.name, c.name FROM foobar LEFT OUTER JOIN foobar c ON foobar.parent_id = c.id

उत्तर № 2 के लिए 1
SELECT c.id, c.name, a.name as [parent] FROM foobar a LEFT OUTER JOIN foobar c ON c.parent_id = a.id

संबंधित सवाल
सबसे लोकप्रिय