Top-Themen

AppleEntwicklungHardwareInternetLinuxMicrosoftMultimediaNetzwerkeOff TopicSicherheitSonstige SystemeVirtualisierungWeiterbildungZusammenarbeit

Aktuelle Themen

Administrator.de FeedbackApache ServerAppleAssemblerAudioAusbildungAuslandBackupBasicBatch & ShellBenchmarksBibliotheken & ToolkitsBlogsCloud-DiensteClusterCMSCPU, RAM, MainboardsCSSC und C++DatenbankenDatenschutzDebianDigitiales FernsehenDNSDrucker und ScannerDSL, VDSLE-BooksE-BusinessE-MailEntwicklungErkennung und -AbwehrExchange ServerFestplatten, SSD, RaidFirewallFlatratesGoogle AndroidGrafikGrafikkarten & MonitoreGroupwareHardwareHosting & HousingHTMLHumor (lol)Hyper-VIconsIDE & EditorenInformationsdiensteInstallationInstant MessagingInternetInternet DomäneniOSISDN & AnaloganschlüsseiTunesJavaJavaScriptKiXtartKVMLAN, WAN, WirelessLinuxLinux DesktopLinux NetzwerkLinux ToolsLinux UserverwaltungLizenzierungMac OS XMicrosoftMicrosoft OfficeMikroTik RouterOSMonitoringMultimediaMultimedia & ZubehörNetzwerkeNetzwerkgrundlagenNetzwerkmanagementNetzwerkprotokolleNotebook & ZubehörNovell NetwareOff TopicOpenOffice, LibreOfficeOutlook & MailPapierkorbPascal und DelphiPeripheriegerätePerlPHPPythonRechtliche FragenRedHat, CentOS, FedoraRouter & RoutingSambaSAN, NAS, DASSchriftartenSchulung & TrainingSEOServerServer-HardwareSicherheitSicherheits-ToolsSicherheitsgrundlagenSolarisSonstige SystemeSoziale NetzwerkeSpeicherkartenStudentenjobs & PraktikumSuche ProjektpartnerSuseSwitche und HubsTipps & TricksTK-Netze & GeräteUbuntuUMTS, EDGE & GPRSUtilitiesVB for ApplicationsVerschlüsselung & ZertifikateVideo & StreamingViren und TrojanerVirtualisierungVisual StudioVmwareVoice over IPWebbrowserWebentwicklungWeiterbildungWindows 7Windows 8Windows 10Windows InstallationWindows MobileWindows NetzwerkWindows ServerWindows SystemdateienWindows ToolsWindows UpdateWindows UserverwaltungWindows VistaWindows XPXenserverXMLZusammenarbeit
GELÖST

Doppelte Datenbankeinträge herausfiltern

Frage Entwicklung Datenbanken

Mitglied: rumbleDom

rumbleDom (Level 1) - Jetzt verbinden

11.07.2012 um 10:00 Uhr, 2799 Aufrufe, 5 Kommentare

MySQL-Datenbanktabelle enthält doppelte (und mehrfache) Datenbankeinträge. Diese sollen mit einem SQL-Statement herausgefiltert werden.

Umgebung:

MySQL-Tabellenname: ARTIKEL
Felder: ID, LIEFERANT, BESTELLNUMMER

ID ist immer fortlaufend, LIEFERANT ist ein INT (beispielsweise 1228), BESTELLNUMMER ist VARCHAR (beispielsweise ABC123)


Lösungsansatz:

SELECT *
FROM ARTIKEL
WHERE COUNT(LIEFERANT) > 1
AND COUNT(BESTELLNUMMER) > 1
GROUP BY BESTELLNUMMER


Leider bin ich damit irgendwie auf dem Holzweg und finde bei Google sowie der MySQL-Doku nicht wirklich eine Lösung oder einen passenden Ansatz hierzu.

Kann mir jemand weiterhelfen?

Gruß, rumble

Mitglied: Lu22235
11.07.2012 um 10:09 Uhr
Mit DISTINCT kann man Duplikate rausfiltern.
Hier kleine Funktionsbeschreibung. http://www.mysqlfaqs.net/mysql-faqs/Select-Statement/How-does-DISTINCT- ...
Bitte warten ..
Mitglied: nxclass
11.07.2012, aktualisiert um 12:21 Uhr
fehlt da nur ein Group element ?
01.
SELECT * 
02.
FROM ARTIKEL 
03.
GROUP BY BESTELLNUMMER,LIEFERANT
... nun hast du es gefiltert.
Ich vermute aber mal, dass Du die doppelten Werte löschen willst !?

btw. wenn solche doppelten Werte nicht gewünscht sind, dann setze ein UNIQUE Schlüsselpaar und arbeite mit REPLACE oder INSERT .. ON DUPLICATE KEY UPDATE
Bitte warten ..
Mitglied: rumbleDom
11.07.2012 um 16:48 Uhr
Ich vermute aber mal, dass Du die doppelten Werte löschen willst !?
Korrekt ... Sorry, da habe ich mich mit dem Wort "filtern" etwas unglücklich ausgedrückt


btw. wenn solche doppelten Werte nicht gewünscht sind, dann setze ein UNIQUE Schlüsselpaar und arbeite mit REPLACE oder
INSERT .. ON DUPLICATE KEY UPDATE
Das funktioniert leider nicht, weil die Auswertung hierzu erst gemacht werden muss und dafür auch die doppelten Werte benötigt werden
Bitte warten ..
Mitglied: exchange
11.07.2012 um 23:56 Uhr
Hi,
verstehe gerade nicht was Du genau suchen willst aber grundsätzlich würde das z.B. so aussehen:

SELECT mac, count(id) FROM nutzer GROUP BY mac HAVING count(*) > 1

Das zeigt Dir alle MAC Adressen an, welche mehr als einmal in der Datenbank vorkommen.

Gruß
Bitte warten ..
Mitglied: rumbleDom
12.07.2012 um 05:05 Uhr
Treffer!!! HAVING ist es!
Vielen herzlichen Dank.
Bitte warten ..
Neuester Wissensbeitrag
Microsoft Office

MS Office Excel - Formel wird angezeigt, aber nicht berechneter Wert!

Tipp von holli.zimmi zum Thema Microsoft Office ...

Ähnliche Inhalte
Netzwerkgrundlagen
gelöst Doppelte MAC Adresse (3)

Frage von Marius.Follert zum Thema Netzwerkgrundlagen ...

Batch & Shell
Batsch doppelte Zeile in in Text finden und eine löschen (10)

Frage von GNLen1 zum Thema Batch & Shell ...

Heiß diskutierte Inhalte
Hyper-V
gelöst Reiner Hyper- V Server oder lieber Rolle (21)

Frage von Winuser zum Thema Hyper-V ...

Exchange Server
Bestehende eMails autoamatisch weiterleiten (21)

Frage von metal-shot zum Thema Exchange Server ...

SAN, NAS, DAS
gelöst Synology Version 6.1 Probleme (18)

Frage von Hendrik2586 zum Thema SAN, NAS, DAS ...

Router & Routing
gelöst IP Kamera für drei unabhängige Netzwerke (16)

Frage von ProfessorZ zum Thema Router & Routing ...