Hoi,
Ik heb de volgende al gevraagd op een ander forum maar nog steeds geen goed antwoord gekregen.
De onderstaande query werkt en krijg de data zoals ik hem wil hebben.
het is alleen super traag. 9656 ms voor 7057 rijen. dit is ook wel logisch omdat de query meerdere selects gebruikt.
Mijn vraag is dan ook of er een alternatief is voor de onderstaande query.
SELECT d.debnr,d.maanden,d.nawgegevens...,
(SELECT k.prijs FROM kosten AS k WHERE k.what=1 AND did=d.did) AS prijs1,
(SELECT k.prijs FROM kosten AS k WHERE k.what=2 AND did=d.did) AS prijs2,
(SELECT k.prijs FROM kosten AS k WHERE k.what=3 AND did=d.did) AS prijs3
FROM tabelX AS d
---------
een inner join ook al iets mee getest maar dan kon ik die velden prijs1,prijs2,prijs3 niet mee krijgen omdat in de tabel maar in veld prijs is met een status veld what. (what bepaald wat voor'n prijs het is)
SELECT d.debnr,d.maanden,d.nawgegevens...,
k.prijs as prijs1
FROM tabelX AS d LEFT OUTER JOIN kosten AS k ON d.did=k.did
Alvast bedankt voor de moeite,
GC-Martijn
Ik heb de volgende al gevraagd op een ander forum maar nog steeds geen goed antwoord gekregen.
De onderstaande query werkt en krijg de data zoals ik hem wil hebben.
het is alleen super traag. 9656 ms voor 7057 rijen. dit is ook wel logisch omdat de query meerdere selects gebruikt.
Mijn vraag is dan ook of er een alternatief is voor de onderstaande query.
SELECT d.debnr,d.maanden,d.nawgegevens...,
(SELECT k.prijs FROM kosten AS k WHERE k.what=1 AND did=d.did) AS prijs1,
(SELECT k.prijs FROM kosten AS k WHERE k.what=2 AND did=d.did) AS prijs2,
(SELECT k.prijs FROM kosten AS k WHERE k.what=3 AND did=d.did) AS prijs3
FROM tabelX AS d
---------
een inner join ook al iets mee getest maar dan kon ik die velden prijs1,prijs2,prijs3 niet mee krijgen omdat in de tabel maar in veld prijs is met een status veld what. (what bepaald wat voor'n prijs het is)
SELECT d.debnr,d.maanden,d.nawgegevens...,
k.prijs as prijs1
FROM tabelX AS d LEFT OUTER JOIN kosten AS k ON d.did=k.did
Alvast bedankt voor de moeite,
GC-Martijn
// - bla la