duplicate entry's filteren - access 2003

  • Onderwerp starter Onderwerp starter hehe
  • Startdatum Startdatum
Status
Niet open voor verdere reacties.

hehe

Terugkerende gebruiker
Lid geworden
2 dec 2000
Berichten
2.109
Hallo,

Ik heb een database waar ik verschillende pcnummers heb ingevoerd en in een andere tabel heb ik alle applicaties en applicatietypes genoemd die op de pc's voorkomen.
In deze lijst heb ik ook excelsheets staan die ik vaak gebruik.

Nu heb ik een query gemaakt waar ik de pc nummers opvraag en alle applicaties.
Nu wil ik alleen de excelsheets zien en dat kan ik ook filteren in de kolom Applicattype en dan op Excel.

Tot nu toe goed.

Sommige Excelsheets komen ook op meerdere pc's voor en staan dus dubbel in die qry.
Hoe krijg ik het voor elkaar dat ik ze niet meer dubbel in de lijst heb en nog steeds alleen op Excel blijft zoeken?

Hoop dat iemand me kan helpen.
Groeten
Henny
 
In je query de optie DISTINCT gebruiken

SELECT DISTINCT etc.
 
Hallo Bartuls,

Bedankt voor je tip maar deze geeft records weer die duplicate data in de geselecteerde velden bevat.
Ik zoek een manier om een lijst te krijgen waarin de duplicaten weg blijven en alles 1 keer vermeld wordt zonder dubbele vermeldingen.

Groetjes
Henny
 
Hoi Bartuls,

Helaas ben ik een beginnend gebruiker op dit gebied en weet ik niet waar ik het SQL kan vinden.

Ik hoop dat je dit bedoelt:
Dit hangt onder mijn selectqry

SELECT tblApplications.Application
FROM (tblStatus RIGHT JOIN (tblPriority RIGHT JOIN (tblOwner RIGHT JOIN (tblOperatingSystem RIGHT JOIN (tblAdres RIGHT JOIN (tblCategory RIGHT JOIN tblSystems ON tblCategory.CatID = tblSystems.CatID) ON tblAdres.DepID = tblSystems.AdrID) ON tblOperatingSystem.OsID = tblSystems.OsID) ON tblOwner.OwnID = tblSystems.OwnID) ON tblPriority.PrioID = tblSystems.PrioID) ON tblStatus.StatID = tblSystems.StatID) LEFT JOIN (tblApplications RIGHT JOIN (tblApllType RIGHT JOIN Koppeltabel ON tblApllType.ApplicationTypeID = Koppeltabel.ApplicationTypeID) ON tblApplications.AppID = Koppeltabel.AppID) ON tblSystems.SysID = Koppeltabel.SysID;

Alvast bedankt voor het meedenken.

Henny
 
Yep, dat bedoel ik.

Daar moet je dus de DISTINCT toevoegen:

SELECT DISTINCT tblApplications.Application
FROM (tblStatus RIGHT JOIN (tblPriority RIGHT JOIN (tblOwner RIGHT JOIN (tblOperatingSystem RIGHT JOIN (tblAdres RIGHT JOIN (tblCategory RIGHT JOIN tblSystems ON tblCategory.CatID = tblSystems.CatID) ON tblAdres.DepID = tblSystems.AdrID) ON tblOperatingSystem.OsID = tblSystems.OsID) ON tblOwner.OwnID = tblSystems.OwnID) ON tblPriority.PrioID = tblSystems.PrioID) ON tblStatus.StatID = tblSystems.StatID) LEFT JOIN (tblApplications RIGHT JOIN (tblApllType RIGHT JOIN Koppeltabel ON tblApllType.ApplicationTypeID = Koppeltabel.ApplicationTypeID) ON tblApplications.AppID = Koppeltabel.AppID) ON tblSystems.SysID = Koppeltabel.SysID;
 
bijna...

Hoi Bartuls,

Je maakt me erg blij...
Alleen:o
Nu haalt hij keurig alle dubbele eruit maar nu krijg ik naast alleen excel types ook de access en word documentjes eruit.
Hoe kan ik dit nog filteren op alleen Excel of alleen word?

Of geef ik nu het antwoord al...en moet ik dat filteren?
Zoja, hoe zit het dan als ik op nog een kolom wil filteren, zoals omschrijving?

ALvast heel erg bedankt.

Henny
 
Laatst bewerkt:
Hoe kun je herkennen dat het Excel betreft? Welk veld in welke tabel en wat staat er dan in dat veld.
Dat moet je toevoegen aan je query

SELECT DISTINCT.....

WHERE tabel.veld = inhoud van het veld
 
In dezelfde tabel als de naam van de applicatie.
De tabel bestaat uit 3 kolommen.
1 is ID, 2 is naam applicatie en 3 is type applicatie bv word/access of excel.

Ik krijg een syntaxerror als ik dit toevoeg:

SELECT DISTINCT tblApplications.Application,
WHERE tblApplications.ApplType = MS Excel
FROM (tblStatus RIGHT JOIN (tblPriority RIGHT JOIN (tblOwner RIGHT JOIN (tblOperatingSystem RIGHT JOIN (tblDepartment RIGHT JOIN (tblCategory RIGHT JOIN tblSystems ON tblCategory.CatID = tblSystems.CatID) ON tblDepartment.DepID = tblSystems.DepID) ON tblOperatingSystem.OsID = tblSystems.OsID) ON tblOwner.OwnID = tblSystems.OwnID) ON tblPriority.PrioID = tblSystems.PrioID) ON tblStatus.StatID = tblSystems.StatID) LEFT JOIN (tblApplications RIGHT JOIN (tblApllType RIGHT JOIN Koppeltabel ON tblApllType.ApplicationTypeID = Koppeltabel.ApplicationTypeID) ON tblApplications.AppID = Koppeltabel.AppID) ON tblSystems.SysID = Koppeltabel.SysID;
 
Bijna goed:

SELECT DISTINCT tblApplications.Application,
FROM (tblStatus RIGHT JOIN (tblPriority RIGHT JOIN (tblOwner RIGHT JOIN (tblOperatingSystem RIGHT JOIN (tblDepartment RIGHT JOIN (tblCategory RIGHT JOIN tblSystems ON tblCategory.CatID = tblSystems.CatID) ON tblDepartment.DepID = tblSystems.DepID) ON tblOperatingSystem.OsID = tblSystems.OsID) ON tblOwner.OwnID = tblSystems.OwnID) ON tblPriority.PrioID = tblSystems.PrioID) ON tblStatus.StatID = tblSystems.StatID) LEFT JOIN (tblApplications RIGHT JOIN (tblApllType RIGHT JOIN Koppeltabel ON tblApllType.ApplicationTypeID = Koppeltabel.ApplicationTypeID) ON tblApplications.AppID = Koppeltabel.AppID) ON tblSystems.SysID = Koppeltabel.SysID
WHERE tblApplications.ApplType = 'MS Excel';
 
Geweldig Bartuls,

Weer een boel geleerd vandaag dankjewel.

Heb jij misschien een tip voor me in de vorm van een boek site of cursus waardoor ik wat vertrouwder kan worden?
Ik vind dit werken met database en sql machtig interessant en wil er graag meer van weten.

Watheb jij er voor moeten doen?

groetjes en nogmaals tnx
Henny
 
Hallo Bartuls,

Nog een vraagje.

Ik heb in die qry nu ook veld OperatingSystem uit de tblOperatingSystem gezet.
Zodat ik weet wat ik op de linux bak heb en op de vmmachine.

Moet ik nu nog een regel als WHERE (((tblOperatingSystem.OperatingSytem)='Windows XP')); toe gaan voegen

of moet dit allemaal achter 1 WHERE statement geplaatst worden? zoals:
WHERE tblApplications.ApplType = 'MS Excel' (((tblOperatingSystem.OperatingSytem)='Windows XP'));

Hardstikke bedankt
Henny
 
Status
Niet open voor verdere reacties.
Terug
Bovenaan Onderaan