Hallo Leute einfache Frage, kann aber nichts finden.Wie überprüft man, ob alle Felder in Oracle eindeutig sind?
Dank
Hallo Leute einfache Frage, kann aber nichts finden.Wie überprüft man, ob alle Felder in Oracle eindeutig sind?
Dank
SELECT myColumn, COUNT(*)
FROM myTable
GROUP BY myColumn
HAVING COUNT(*) > 1
Diese Sie alle MyColumn Werte zusammen mit der Anzahl ihres Auftretens angezeigt werden kann, wenn ihre Häufigkeit ist größer als eins (dh sie sind nicht eindeutig).
Wenn das Ergebnis dieser Abfrage leer ist, haben Sie in dieser Spalte eindeutige Werte.
Ok, danke, es ist was ich brauche)))) – Burjua
ist eine Möglichkeit, einen eindeutigen Index zu erstellen. , wenn die Indexerstellung fehlschlägt, haben bestehende Sie doppelte Info, wenn ein Einsatz ausfällt, wäre es ein Duplikat hergestellt hat ...
Eine einfache Möglichkeit besteht darin, die Tabelle mit DBMS_STATS zu analysieren. Nachdem Sie dies getan haben, können Sie dba_tables betrachten ... Sehen Sie sich die Spalte num_rows an. Der Blick auf dab_tab_columns. Vergleichen Sie für jede Spalte den Wert num_distinct mit der Anzahl der Zeilen. Dies ist eine ungefähre Art zu tun, was Sie wollen, ohne einen vollständigen Tabellenscan durchzuführen, wenn Sie besorgt sind, ein Produktionssystem an einem riesigen Tisch zu beeinflussen. Wenn Sie direkte Ergebnisse erzielen möchten, tun Sie, was die anderen vorschlagen, indem Sie die Abfrage für die Tabelle mit einer Gruppe ausführen.
Alle Felder oder alle Datensätze? – Quassnoi
Sie müssen viel mehr Informationen liefern. Das Minimum ist die Struktur/Definition Ihrer Tabelle (n) idealerweise als CREATE TABLE-Anweisung. Dann einige Beispieldaten und das Ergebnis, das Sie von diesen Beispieldaten erwarten. –
alle Felder einer Spalte in Tabelle – Burjua