optellen en aftrekken

Status
Niet open voor verdere reacties.

dralex

Gebruiker
Lid geworden
21 mrt 2011
Berichten
154
is het mogelijk dat als een record een bepaalde waarde heeft dat deze niet meegeteld word?
ik tel nu het aantal unieke records en dat werkt maar ik zou graag willen dat als een veld in een record de waarde JA heeft deze niet meegeteld wordt.

is dit mogelijk?
 
Hoe maak je de telling nu? Op basis van velden, of records? En in welk object (query, formulier)?
 
Bekijk bijlage 135625Bekijk bijlage 135627Bekijk bijlage 135629

Ik heb eerst een selectiequery gemaakt
query qID_Overzicht:
Code:
SELECT DISTINCT Basis_info_test.Categorie, Basis_info_test.Basis_info_test_Id, Ftg_info.Ftg_Id
FROM Basis_info_test LEFT JOIN Ftg_info ON Basis_info_test.Basis_info_test_Id = Ftg_info.Basis_info_test_id
WHERE ((IIf([FTG_id] Is Null,True,[FTG_id]))<>False) AND ((IIf([Basis_info_test.Basis_info_test_Id] Is Null,True,[Basis_info_test.Basis_info_test_Id]))<>False) AND ((IIf([Categorie] Is Null,True,[Categorie]))<>False) 
GROUP BY Basis_info_test.Categorie, Basis_info_test.Basis_info_test_Id, Ftg_info.Ftg_Id
vervolgens de unieke gefiltert met qeen query
query Overzicht_Ftg_ID:
Code:
SELECT DISTINCT qID_Overzicht.Categorie, qID_Overzicht.Ftg_Id
FROM qID_Overzicht;

en daarna de totalen ook met een query
Code:
query qID_Overzicht_Ftg_ID_totaal:
SELECT qID_Overzicht_Ftg_Id.Categorie, Count(qID_Overzicht_Ftg_Id.Ftg_Id) AS AantalVanFtg_Id
FROM qID_Overzicht_Ftg_Id
GROUP BY qID_Overzicht_Ftg_Id.Categorie;

de ja/nee zit hier nog niet in dat is veld Ftg_info.Auto test.
 
Laatst bewerkt door een moderator:
Ik snap niet helemaal waarom je zoveel queries in de strijd gooit, want met één query krijg ik hetzelfde resultaat als jij met 3 queries:

Code:
SELECT DISTINCT b.Categorie, Count(i.Ftg_Id) AS Aantal
FROM Basis_info_test AS b LEFT JOIN Ftg_info AS i ON b.Basis_info_test_Id = i.Basis_info_test_id
GROUP BY b.Categorie;

En als je de Ja opties er uit wilt hebben, voeg je daar een criterium aan toe:

Code:
SELECT DISTINCT b.Categorie, Count(i.Ftg_Id) AS Aantal
FROM Basis_info_test AS b LEFT JOIN Ftg_info AS i ON b.Basis_info_test_Id = i.Basis_info_test_id
WHERE (Not i.[Auto test]=Yes)
GROUP BY b.Categorie;
 
Het werkt !!!!!!!

ik ben niet zo bekent met query's.

maar toch een paar vragen
- waar komt tabel "i" en "b" vandaan?
- is het mogelijk dat als er geen i.Ftg_Id aanwezig is bij een b.Categorie dat er een 0 geplaatst wordt?
 
Laatst bewerkt:
Ik heb de twee tabellen een alias gegeven om de code leesbaar te houden. Dat gebeurt hier: Basis_info_test AS b en hier: Ftg_info AS i. Je kunt lege waarden vervangen door 0 door het veld op te maken met de functie Nz.
 
Maar ik denk dat je iets anders bedoelt ;) door het filter vallen er records weg, die je eerst wel zag. Verander het criterium in: <>Ja Or Is Null en je bent er.
 
Super Thanks bedankt je bent een topper (moet ik ff doorgaan?)
 
Ik loop al genoeg naast m'n schoenen :D
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan