If functie met som functie

Status
Niet open voor verdere reacties.

marka

Gebruiker
Lid geworden
14 jul 2009
Berichten
333
Ik heb de volgende query. Hij geeft echter een probleem dat de expressie geen deel uit maakt van de statistische functie. Hoe kan ik dit verhelpen?

Code:
SELECT IIf([debiteur]="20000",Sum([verkoopbedrag])) AS [Totale Drukkosten], IIf([debiteur]="30000",Sum([verkoopbedrag])) AS [Totale Drukkosten1]
FROM [Interne Orders];
 
De query zal zo nooit werken. Wat wil je eigenlijk bereiken? Wil je met de IIF de twee debiteuren selecteren? Of wil je een berekening maken voor de totalen? En op welke tabel wordt je select gebruikt?
 
Ik wil de kolommen hebben waarbij ik in de ene kolom de som van verkoopbedrag krijg bij debiteur "20000" en in de andere kolom hetzelfde alleen dan bij debiteur "30000". Het wordt gebruikt op tabel interne orders.
 
Ik denk dat je eigenlijk zoiets zoekt...
Code:
SELECT Sum([verkoopbedrag])) AS [Totale Drukkosten]
FROM [Interne Orders];
WHERE ([debiteur]="20000" Or [debiteur]="30000")
 
Nee dat zoek ik niet ik wil heel duidelijk de bedragen zien die bij beide nummers hoort.
 
Moet je de query op Totalen zetten, en groeperen op Debiteurnr. en Som gebruiken als functie voor het veld Verkoopbedrag. Ik zie in je code ook wel dat je twee aparte veldnamen probeert te maken, maar dat lijkt mij vrij zinloos...
 
Ik denk dat ik snap wat je bedoelt.

kolom 1: debiteurnummer;kolom2 som
 
Lastige is alleen dat ik vanuit de 2 nummers een 3e uitreken door: (totaal - som van de 2 andere sommen) te doen en dat gaat zo niet. Anders moet ik een hulpquery maken, want zo gaat het niet denk ik.
 
Bedoel je zoiets?

Code:
SELECT Sum(verkoopbedrag) AS [Totale Kosten], (SELECT Sum(verkoopbedrag) AS [Totale Kosten]
FROM [Interne Orders]
WHERE (debiteur="2000" Or debiteur="3000")) AS Intern, [Totale kosten]-[Intern] AS Verschil
FROM [Interne Orders];
 
Nee niet helemaal de 20000 en 30000 moeten los weergeven worden.
 
Marka,

Rechttoe rechtaan zoals in je eerste bericht zou dit moeten kunnen.

Code:
SELECT Sum([Interne Orders].verkoopbedrag) AS [Alle Drukkosten], Sum(IIf(debiteur="20000",verkoopbedrag,0)) AS [Drukkosten 20000], Sum(IIf(debiteur="30000",verkoopbedrag,0)) AS [Drukkosten 30000], ([Alle Drukkosten]-([Drukkosten 20000]+[Drukkosten 30000])) AS Rest
FROM [Interne Orders];

Groeten,

Paul
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan