dedlfix: SQL: IF funktioniert nicht

Beitrag lesen

Hi!

[Eine Abfrage] soll folgendes tun:
Er soll mir alle Kinder von Ktheorien holen aber nicht die Kindes-Kinder.
Das klappt auch.
Nun - folgender Query ist genau wie der obrige nur mit "Paul Watzlawick" als Kategoriename:
Paul Watzlawick hat keine Kinder.

Wenn er keine Kinder hat, kann es keine Kinder als Ergebnis geben. Du willst nun stattdessen "das Elter", aber das hast du ja gar nicht angefragt, auch nicht bei der ersten Abfrage, sondern nur dessen Kinder. Wo soll es also plötzlich herkommen?

Was soll er also tun? Stattdessen soll er mir doch wenigstens Paul Watzlawicks ID zurückgeben - damit ich im weiteren Programmfluss alternativ mit der Situation umgehen kann.

Es sieht mir so aus, als ob die erste Abfrage eine Ergebnismenge liefert, über die du nun iterierst und die zweite darauf anwendest. Dann hast du doch bereits alle Angaben und kannst bei leerer Ergebnismenge im abfragenden Programm so reagieren, dass du die Daten aus dem Datensatz der ersten Abfrage nimmst.

Warum klappt das nicht? Ich bekomme ein leeres Array zurück.

Leeres Array? Die Ergebnismenge einer SQL-Abfrage ist doch kein Array.

Lo!