2 Zeilen prüfen, ob die identische Werte haben und nur 1 mal dann diese Zeile ausgeben

uppss

Benutzer
Beiträge
12
Liebes Forumteam,

Gibt es eine Bedingung, die prüfen soll, wenn die Werte aus 2 Spalten mit den Werten aus anderen Zeilen von den selben Spalten identisch sind, dann nur 1 Mal anzeigt.

Ich muss eine Bedingung schreiben, in der ich prüfe und nur die zutreffende ausgebe.
Ich darf keine doppelte Zeilen anzeigen. Prüfen muss ich ob Zeile 2 == Zeile 2 ist, dann nur 1 Mal darf diese Zeile angezeigt werden
distinct und group by kann ich hier nicht anwenden.

1 AA
1 AA
2 AA
2 BB
3 AB
1 AA

ausgeben muss ich nur folgende Zeilen

1 AA
2 AA
2 BB
3 AB

BILD:
statement-png.524
ich darf natürlich nur folgende Zeilen anzeigen

92526367 NA
92526367 IB // nur 1 Mal darf ich ausgeben
 

Anhänge

  • statement.PNG
    statement.PNG
    6,4 KB · Aufrufe: 24
Werbung:
Liebes Forumteam,

Gibt es eine Bedingung, die prüfen soll, wenn die Werte aus 2 Spalten mit den Werten aus anderen Zeilen von den selben Spalten identisch sind, dann nur 1 Mal anzeigt.

Ich muss eine Bedingung schreiben, in der ich prüfe und nur die zutreffende ausgebe.
Ich darf keine doppelte Zeilen anzeigen. Prüfen muss ich ob Zeile 2 == Zeile 2 ist, dann nur 1 Mal darf diese Zeile angezeigt werden
distinct und group by kann ich hier nicht anwenden.

1 AA
1 AA
2 AA
2 BB
3 AB
1 AA

ausgeben muss ich nur folgende Zeilen

1 AA
2 AA
2 BB
3 AB

Dann ist wohl Dein DISTINCT kapott.

Code:
test=*# select * from uppss ;
 c1 | c2
----+----
  1 | aa
  1 | aa
  2 | aa
  2 | bb
  3 | ab
  1 | aa
(6 rows)

test=*# select distinct c1, c2 from uppss ;
 c1 | c2
----+----
  2 | bb
  2 | aa
  3 | ab
  1 | aa
(4 rows)

Uff, meines geht noch ;-)
 
hm, ich habe erst mal und muss id, spalte 1, spalte 2 untersuchen
wenn ich distinct mache, prüfe ich unter id, und nur unter id, ob die Werte identisch sind, die sind nicht identisch, deswegen habe ich alle Datensätze aus der Datenbank raus.

select distinct id, spalte_1, spalte_2 from t;
ich darf nur die Spalte_1 UND Spalte_2 ausgeben und nur 1 mal, wenn
spalte_1 UND spalte_2 eindeutig sind
d.h. wenn spalte_1 UND spalte_2 ein mit einer Zahl oder mit einem Zeichen von einander unterscheiden, muss ich wohl anzeigen

die doppelte darf ich nicht anzeigen
 
Soweit ich das verstanden habe hat er so etwas:
Code:
Create Table test_tab
(
   id Number,
   val_1 Varchar2(20),
   val_2 Number,
   Constraint test_tab_uid Unique (id)
);
Und möchte ein Distinct über val_1 und val_2... Oder liege ich da gerade falsch?
 
Hat sich erledigt!
ich habe mit disctinct doch gemacht.
Sorry ich stand unter Zeitdruck und habe schnell ohne Rechtschreibprüfung getippt :)
Ich habe einfach das Feld id aus der sql Abfrage gelöscht und nun prüft distinct ob die Werte eindeutig sind und zeigt nur 1 Mal an.
Ich dachte erst damals, dass "SELECT DISTINCT name1 name2 FROM..." heißst, prüfe nur unter name1 ob die Werte eindeutig sind.
 
Werbung:
Zurück
Oben