![]() |
Datenbank: SQLite • Version: 3.x • Zugriff über: UniDac
Dublettencheck über mehrere Spalten?
Hi,
ich kann ja mit folgender SQL-Abfrage Dubletten in einer Spalte rausbekommen:
Code:
Wie mache ich das aber bei einer Prüfung über mehrere Spalten?
Select *
from contacts where lastname in( select lastname from contacts group by lastname having count(*) > 1) order by lastname; Viele Grüße .... |
AW: Dublettencheck über mehrere Spalten?
Im Subquery alle relevanten Spalten abfragen und gruppieren, wenn ich nicht irre.
|
AW: Dublettencheck über mehrere Spalten?
SELECT *
FROM Tabelle WHERE ID NOT IN ( SELECT Min(ID) FROM Tabelle GROUP BY Feld_1, Feld_2, Feld_n ); Das listet dir alle Kopien auf, jedoch nicht die Originale (die mit der geringsten ID). Vlt. passt es ja für deinen Anwendungszweck. |
AW: Dublettencheck über mehrere Spalten?
Code:
gegf. mit Soundex o.ä.
Select Name,Vorname,Strasse,Count(*)
from tabelle Group by Name,Vorname,Strasse Having Count(*)>1 sorry not sorgfältig genug gelesen
Code:
Select * from Adressen t
join ( Select Name,Vorname,Strasse,Count(*) as Anz from Adressen Group by Name,Vorname,Strasse Having Count(*)>1 ) a on a.Name=t.Name and a.Vorname=t.Vorname and a.Strasse=t.Strasse order by t.name,t.Vorname,t.Strasse |
AW: Dublettencheck über mehrere Spalten?
:cheer: Danke euch. Bummi's has won :mrgreen:
|
AW: Dublettencheck über mehrere Spalten?
Hi,
jetzt brauche ich noch mal einen Denkanstoss. Alle gefundenen Datensätze besitzen ein modified-Timestamp. Ist es möglich direkt aus der Query heraus den oder die älteren Datensätze mit einem Flag zu versehen, oder muss ich das über das Programm machen? Viele Grüße ... |
AW: Dublettencheck über mehrere Spalten?
Meine Abfrage liefert dir ja alle doppelten zurück, außer den ältesten (oder neusten, wenn du Max(ID) anstatt Min(ID) nutzt). Wenn du jetzt das Select in ein Update wandelt, hast du doch, was du willst, oder? :-D
|
AW: Dublettencheck über mehrere Spalten?
Hi,
nein. Zuerst möchte ich alle Datensätze haben, die irgenwie doppelt vorkommen (verwende dazu Bummis Code). Jetzt möchte ich noch Folgendes erreichen: Zitat:
|
AW: Dublettencheck über mehrere Spalten?
Ja?! Und da meine Abfrage alle Datensätze außer dem neusten liefern (wobei ich das ja an der ID festmache, die Zeit ginge ggf. auch, sofern sie eindeutig ist), kannst du diese Datensätze ändern, wenn du das Select- zu einem Update-Statement machst ...
|
AW: Dublettencheck über mehrere Spalten?
Hi,
es sollten aber trotzdem alle Datensätze (auch die Neusten) auf der Oberfläche angezeigt werden. Bei dir würde auch nur der ältere Datensatz und nicht alle älteren Datensätze angezeigt werden, oder verstehe ich dich da falsch :gruebel: Viele Grüße ... |
Alle Zeitangaben in WEZ +1. Es ist jetzt 22:01 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz