"Fast" doppelte Einträge aussortieren

From: Nicola Tiling <nti(at)w4w(dot)net>
To: pgsql-de-allgemein(at)postgresql(dot)org
Subject: "Fast" doppelte Einträge aussortieren
Date: 2010-05-28 20:36:20
Message-ID: D6E3BB93-FFE7-4418-B2BC-7D8829884B90@w4w.net
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-de-allgemein

Hi

Und jetzt komme ich um die Funktionen wohl doch nicht drumherum ...

Ich habe folgendes Problem und weiß nicht wie ich ihm zu Leibe rücken soll.

In einer Tabelle die extern automatisch mit Daten gefüttert wird, sind für mich manche Einträge überflüssig wenn Sie in Spalte B doppelt sind UND in Spalte C leer. Konkret

id ip mac

1 192.168.14.30
2 192.168.14.253
3 192.168.14.254
4 192.168.160.1 000e0ca2a2f1
5 192.168.160.1
6 192.168.160.10
7 192.168.160.11 003048b10d4d
8 192.168.160.11

Für meine Belange sind ID 4 und 5 sowie 7 und 8 doppelt weil sie die gleiche IP Nummer haben. WENN dem so ist benötige ich den Datensatz mit der mac-Adresse.

Also "Wenn Wert in Spalte ip doppelt, gebe Datensatz aus der auch einen Wert in Spalte mac hat".

D.h. heißt eine Abfrage soll nur die Datensätze 1,2,3,4,6,7 zurückgeben. Ein "DISTINCT ON (ip)" reicht nicht aus, weil damit nicht sichergestellt ist, dass ich den Datensatz mit der mac-Adresse erwische.

Es ist ausgeschlossen das eine IP mehr als zweimal vorkommen kann. Es ist auch immer so, das wenn eine IP zweimal vorkommt einmal die Spalte mac leer ist und einmal einen Inhalt hat. (Hintergrund ist das ein physikalische Netzwerkinterface auf dem VLANs oder andere virtuelle Interfaces liegen einmal ohne MacAdresse erfasst wird - warum auch immer.)

Hat jmd. vielleicht eine Idee?

Grüße
Nicola

Responses

Browse pgsql-de-allgemein by date

  From Date Subject
Next Message Tim Landscheidt 2010-05-28 21:30:21 Re: "Fast" doppelte Einträge aussortieren
Previous Message Andreas 'ads' Scherbaum 2010-05-26 13:21:26 == Wöchentlicher PostgreSQL Newsletter - 23. Mai 2010 ==