Enno Geschrieben 14. September 2005 Teilen Geschrieben 14. September 2005 Hallo, wie bekomme ich es in Access hin, das ich mir alle mehr als einmal vorkommenden Werte einer Spalte raussuchen lasse. Also ich habe eine Tabelle. In einer der Spalten steht ein Barcode. Leider ist von der Anwendung diese Spalte nicht als unique gesetzt. Nun sollte ich hin und wieder nachkucken können ob es doppelte Barcodes gibt. Für nen Hinweis wäre ich echt dankbar Gruß Enno Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
schlati Geschrieben 14. September 2005 Teilen Geschrieben 14. September 2005 Hallo, wie bekomme ich es in Access hin, das ich mir alle mehr als einmal vorkommenden Werte einer Spalte raussuchen lasse. Also ich habe eine Tabelle. In einer der Spalten steht ein Barcode. Leider ist von der Anwendung diese Spalte nicht als unique gesetzt. Nun sollte ich hin und wieder nachkucken können ob es doppelte Barcodes gibt. Für nen Hinweis wäre ich echt dankbar Mach ne neue Abfrage und nimm folgenden SQL-Select, wobei a -> die Spalte ist, die nach doppelten, dreifachen, vierfachen usw. Vorkommen durchsucht werden soll: SELECT a, count(a) FROM Tabelle GROUP BY a; Das ergibt eine Tabelle, wo in der linken Spalte meinetwegen dein Barcode steht und in der rechten, wie häufig er in der Ursprungstabelle vorkommt. Technisch gesehen fasst der SELECT durch das GROUP BY alle gleichen Werte der Spalte a in einer Zeile zusammen, während die Aggregatfunktion count zählt, wie oft dann dieser eine Wert insgesamt in der Urpsrungstabelle vorkommt. Beachte, dass bei einer GROUP BY-Klausel die WHERE-Bedingung nicht greift. Hier musst du dann mit HAVING nach dem GROUP BY einschränken. (-> bezogen auf deine Anforderung, dass du ne Liste haben willst, mit allen Barcodes, die mehr als 1 mal vorkommen). Das schaffst du dann allein :beagolisc Bei weiterem Interesse schaust du dir mal den SQL-Knigge an, in dem die häufigsten Abfragefehler aufgeführt sind Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Enno Geschrieben 14. September 2005 Autor Teilen Geschrieben 14. September 2005 danke hat so ähnlich dann funktioniert: In (SELECT [BARCODE] FROM [dbo_AXAPTA1] As Tmp GROUP BY [BARCODE] HAVING Count(*)>1 ) Und <>'000000' Und <>'OHNE' Nun brauche ich aber noch die Frage dazu, das er nur die Zeilen suchen soll bei denen in der Spalte DOKTYP nicht ein bestimmter Wert vorkommt. Also die soll er dann ganz weglassen beim Zählen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
schlati Geschrieben 14. September 2005 Teilen Geschrieben 14. September 2005 In (SELECT [BARCODE] FROM [dbo_AXAPTA1] As Tmp GROUP BY [BARCODE] HAVING Count(*)>1 [b]UND DOKTYP <> 'WERT'[/b]) Und <>'000000' Und <>'OHNE' (je nachdem, wo die Spalte DOKTYP steht, musst du die Bedingung setzen...) Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Enno Geschrieben 14. September 2005 Autor Teilen Geschrieben 14. September 2005 hmm, wobei dann werd ichs so machen, das ich ne Abfrage auf die Abfrage mache Denn wenn ich dei Bedingung direkt auf den DOKTYP setze zählt er in der Spalte Barcode die trotzdem mit. und dann habe ich ne Menge Zeilen, die nur einmal vorkommen. Zitieren Link zu diesem Kommentar Auf anderen Seiten teilen Mehr Optionen zum Teilen...
Empfohlene Beiträge
Dein Kommentar
Du kannst jetzt schreiben und Dich später registrieren. Wenn Du ein Konto hast, melde Dich jetzt an, um unter Deinem Benutzernamen zu schreiben.