AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi MySQL doppelte Datensätze anzeigen...
Thema durchsuchen
Ansicht
Themen-Optionen

MySQL doppelte Datensätze anzeigen...

Ein Thema von NetSonic · begonnen am 20. Nov 2007 · letzter Beitrag vom 24. Dez 2007
Antwort Antwort
Seite 3 von 3     123   
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#21

Re: MySQL doppelte Datensätze anzeigen...

  Alt 24. Dez 2007, 00:39
Zitat von Gonso:
...kann man deine abfrage so verändern, dass ich nur doppelte datensätze bekomme aber nur einzeln. ... Ich möchte nur 10 sehen, die zwar doppelt sind aber nicht doppelt angezeigt werden sollen.

als doppelt gilt: gleiche nachname und vorname.

Ich sollte aber alle felder in einem datensatz sehen
Hallo Gonso,

kleine Gegenfrage: Wenn es doppelte Datensätze (nachname und vorname) gibt und sich diese Zeilen dann in der Adresse unterschieden, welche der beiden Adressen möchtest du sehen bzw. welche Zeile soll nicht ausgegeben werden?

Denk da nochmal drüber nach, bin auf eine Antwort gespannt.

Gruss
Thorsten
  Mit Zitat antworten Zitat
Gonso

Registriert seit: 16. Dez 2007
Ort: Stuttgart
28 Beiträge
 
#22

Re: MySQL doppelte Datensätze anzeigen...

  Alt 24. Dez 2007, 02:07
hallo omata!

deine frage ist berechtigt und zwang mich zum nachdenken und ich kam zum folgendem ergebnis:

in einer tabelle möchte man nachträglich unique index setzen (nachname, vorname).
beispiel: ich habe zwei datensätze wo die felder nachname und vorname gleich sind (als gleich verstehe ich entsprechend gleiche inhalte => auch leer oder is null). somit gelten solche zwei datensätze für mich als doppelt vorhanden auch wenn sich alle andere felder voneinander unterscheiden.

unter diesen umständen definiere ich einen datensatz als doppelt: das ist ein datensatz, der (später) gegen die unique- regeln (nachname, vorname) verstoßen würde. folgend ist es für mich nicht nötig einen von beiden bevor zuziehen

ANTWORT AUF DEINE FRAGE: es ist egal welchen datensatz ich zu sehen bekomme, hauptsache nur einen von beiden und nur solche die doppelt vorhanden sind.

es wäre echt cool, wenn du so was hingekriegt hättest!

du kannst auch zeigen wie kann man solche abfragen steuern, wenn man z.b. zusätzlich einen von den beiden datensätze sehen möchte der früher erstellt wurde (feld: erfdatum : tdatetime).

danke dass du dich gemeldet hast
Gonso
  Mit Zitat antworten Zitat
omata

Registriert seit: 26. Aug 2004
Ort: Nebel auf Amrum
3.154 Beiträge
 
Delphi 7 Enterprise
 
#23

Re: MySQL doppelte Datensätze anzeigen...

  Alt 24. Dez 2007, 02:33
Hallo Gonso,

ok, mit deinen zusätzlichen Infos kann man natürlich arbeiten...
SQL-Code:
SELECT *
FROM tblkunden x
WHERE COALESCE(nachname, '') <> ''
  AND COALESCE(vorname, '') <> ''
  AND EXISTS (SELECT nachname, vorname
              FROM tblkunden
              WHERE nachname = x.nachname
                AND vorname = x.vorname
              GROUP BY nachname, vorname
              HAVING COUNT(*) > 1)
  AND erfdatum = (SELECT MAX(erfdatum)
                  FROM tblkunden
                  WHERE nachname = x.nachname
                    AND vorname = x.vorname)
ORDER BY nachname, vorname
Hier wird nur der letzte Datensatz angezeigt, wenn es der Erste sein soll, nimm MIN.

Gruss
Thorsten
  Mit Zitat antworten Zitat
Gonso

Registriert seit: 16. Dez 2007
Ort: Stuttgart
28 Beiträge
 
#24

Re: MySQL doppelte Datensätze anzeigen...

  Alt 24. Dez 2007, 13:47
Hallo OMATA!

sehr elegant und sauber, eben Qualitäts-Antwort.

ein weihnachtsgeschenk das ich so nicht verdient habe.

wie schon geschrieben: ich bewundere DEIN Expertenwissen!

danke Thorsten
Gonso
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 3 von 3     123   


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:43 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz