Vergleichen Sie zwei Zeilen in derselben Tabelle auf Gleichheit in SQL

sujeeth.selvam – Freitag, Januar 19, 2018 12:34 PM

>> habe die folgende Tabelle in meiner Datenbank: <<

Wo ist die DDL für diese Tabelle? Was sind die Schlüssel? Welche Datentypen? Was sind die Einschränkungen? Du hast wirklich nichts gepostet. Aber schlimmer noch, Sie scheinen zu glauben, dass es in RDBMS so etwas wie eine generische, magische, universelle „ID“ gibt. Gibt es nicht. Wir verwenden Schlüssel und per Definition ist ein Schlüssel eine Teilmenge der Spalten einer Tabelle, sodass sie für jede Zeile in dieser Tabelle eindeutig sind. Raten Sie, was Sie vielleicht posten wollten, Ich würde das erraten:

TABELLE ERSTELLEN Insurance_Policies
(foobar_id CHAR(2) NOT NULL PRIMÄRSCHLÜSSEL
CHECK(foobar_id LIKE „),
policy_nbr CHAR(5) NOT NULL
CHECK (policy_nbr LIKE „)

IN Insurance_Policies EINFÜGEN
WERTE
(’01‘, ‚34564‘),
(’02‘, ‚67548‘),
(’03‘, ‚34564‘),
(’04‘, ‚98271‘),
(’05‘, ‚90198‘);
(’06‘, ‚98271‘);

Ich suche nach einer SQL-Abfrage, die die policy_nbr-Spaltenwerte in allen 5 Zeilen vergleicht und die Zeilen zurückgibt, deren Wert mindestens einer anderen Zeile entspricht.

WÄHLEN SIE policy_nbr, MIN(foobar_id), MAX(foobar_id)
AUS Insurance_Policies
GRUPPIEREN NACH policy_nbr
ANZAHL HABEN(*) > 1;

Ich bin davon ausgegangen, dass es nur zwei doppelte foobar_id pro Richtliniennummer gibt, da wir keine Spezifikationen haben. Dies ist einer der vielen Gründe, warum wir Leute bitten, DDL zu posten. Wenn ich recht hätte, hätten Sie Einschränkungen auf Ihren Tisch gelegt, um dies sicherzustellen.

Bitte posten Sie DDL und befolgen Sie die ANSI / ISO-Standards, wenn Sie um Hilfe bitten.

Leave a Reply

Deine E-Mail-Adresse wird nicht veröffentlicht.