डेटाबेस में पहले बच्चे का कोई अर्थ नहीं है, आप id
के न्यूनतम द्वारा पहला बच्चा प्राप्त कर सकते हैं या न्यूनतम मान, लेकिन मान तालिका में किसी विशिष्ट क्रम के साथ संग्रहीत नहीं होते हैं, इसलिए आप यह नहीं बता सकते कि कौन सा मान पहला है।
लेकिन, यह मानते हुए कि id
स्वतः वृद्धिशील स्तंभ है, तो पहले बच्चे का मान न्यूनतम id
का मान है , तो आप यह कर सकते हैं:
SELECT
t1.parent,
t2.name,
t1.value
FROM tablename AS t1
INNER JOIN
(
SELECT MIN(id) AS id, parent
FROM tablename
GROUP BY parent
) AS t22 ON t22.id = t1.id AND t1.parent = t22.parent
INNER JOIN tablename AS t2 ON t1.parent = t2.id;
इसे यहां क्रिया में देखें:
यह आपको देगा :
| PARENT | NAME | VALUE |
-------------------------
| 1 | aaa | 111 |
| 3 | ccc | 333 |
या: आप इसे न्यूनतम मान से प्राप्त कर सकते हैं:
SELECT
t1.parent,
t2.name,
MIN(t1.value) AS value
FROM tablename AS t1
INNER JOIN tablename AS t2 ON t1.parent = t2.id
GROUP BY t1.parent, t2.name;
इसे क्रिया में देखें:
यह आपको देगा:
| PARENT | NAME | VALUE |
-------------------------
| 1 | aaa | 111 |
| 3 | ccc | 333 |