Toon posts:

[SQL] Gerelateerde subquery *

Pagina: 1
Acties:

Verwijderd

Topicstarter
Doel is om van een lijst met getallen over een maand een Year To Date (YTD) waarde te berekenen.

Voorbeeld:

Maand: Waarde: YTD:
200601 5 5
200602 7 12
200603 4 16
200604 6 22
.....

De kolom YTD wil ik dus berekenen met een query, Maand en Waarde staan in de tabel.

Geprobeerd
SELECT Maand, Waarde, (SELECT Sum(Waarde) AS X FROM TEST WHERE Maand<= Waarde;) AS YTD FROM TEST;

(En varianten hierop)

Probleem is dat ik niet weet hoe ik vanuit de subquery kan linken naar de hoofdquery (WHERE maand <= Waarde)

  • kenneth
  • Registratie: September 2001
  • Niet online

kenneth

achter de duinen

alias gebruiken voor de tabel in je hoofdquery en dan naar die alias verwijzen

SQL:
1
SELECT foo FROM test AS t1 WHERE bar IN (SELECT bar FROM test AS t2 WHERE t1.baz = t2.baz)

Look, runners deal in discomfort. After you get past a certain point, that’s all there really is. There is no finesse here.


  • whoami
  • Registratie: December 2000
  • Laatst online: 00:54
correlated subqueries:
code:
1
2
select a.* ( select b.* from b where b.id = a.id )
from a

https://fgheysels.github.io/


Verwijderd

Topicstarter
De Alias deed het hem! Het werkt nu prima met de volgende code:

SELECT BLA.Maand, BLA.Waarde, (SELECT Sum(Waarde) AS X FROM TEST WHERE Maand<= bla.maand;) AS YTD
FROM TEST AS BLA;