Kwam net weer een query tegen waarvan ik dacht, dat moet anders kunnen...
Namelijk de onderstaande query waar ik de stamboom van een paard weergeef. Nu haal ik doormiddel van JOINS steeds de ouders op, maar dat moet toch ook makkelijker kunnen.
Als ik nu verder wil, krijg ik een eindeloze querie, voor enkele generatie moet ik nu hard gaan kijken of ze bestaan. Is er geen constructie waarmee dit makkelijker kan?
Overigens maak ik gebruik van MySQL 5.1.46 en PHP 5.3.2
Namelijk de onderstaande query waar ik de stamboom van een paard weergeef. Nu haal ik doormiddel van JOINS steeds de ouders op, maar dat moet toch ook makkelijker kunnen.
SQL:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| SELECT `f1`.`horse_id` AS `f1_horse_id`, `f1`.`horse_name` AS `f1_horse_name`, `fpa1`.`horse_id` AS `f1_has_parents`, `m1`.`horse_id` AS `m1_horse_id`, `m1`.`horse_name` AS `m1_horse_name`, `mpa1`.`horse_id` AS `m1_has_parents` FROM `horse_parents` AS `hp1` LEFT JOIN `horse` AS `f1` ON (`f1`.`horse_id`=`hp1`.`father_id`) LEFT JOIN `horse_parents` AS `fpa1` ON (`fpa1`.`horse_id`=`hp1`.`father_id`) LEFT JOIN `horse` AS `m1` ON (`m1`.`horse_id`=`hp1`.`mother_id`) LEFT JOIN `horse_parents` AS `mpa1` ON (`mpa1`.`horse_id`=`hp1`.`mother_id`) WHERE `hp1`.`horse_id`=1 |
Als ik nu verder wil, krijg ik een eindeloze querie, voor enkele generatie moet ik nu hard gaan kijken of ze bestaan. Is er geen constructie waarmee dit makkelijker kan?
Overigens maak ik gebruik van MySQL 5.1.46 en PHP 5.3.2