- Kategorien:
DUPLICATE_COUNT (System-Datenmetrikfunktion)¶
Gibt die Anzahl der Spaltenwerte zurück, die Duplikate aufweisen, einschließlich NULL-Werte.
In diesem Thema wird die Syntax für den direkten Aufruf der Funktion bereitgestellt. Wie Sie die Funktion mit einer Tabelle oder Ansicht verknüpfen, sodass sie in regelmäßigen Abständen ausgeführt wird, erfahren Sie unter Eine DMF verknüpfen, um Datenqualitätsprüfungen zu automatisieren.
Syntax¶
SNOWFLAKE.CORE.DUPLICATE_COUNT(<query>)
Argumente¶
query
Gibt eine SQL-Abfrage an, die eine einzelne Spalte projiziert.
Zulässige Datentypen¶
Die Spalte, die von der query
projiziert wird, muss einen der folgenden Datentypen haben:
DATE
FLOAT
NUMBER
TIMESTAMP_LTZ
TIMESTAMP_NTZ
TIMESTAMP_TZ
VARCHAR
Rückgabewerte¶
Die Funktion gibt einen Einzelwert vom Datentyp NUMBER zurück.
Anforderungen an die Zugriffssteuerung¶
Um eine System-DMF zu verwenden, wählen Sie eine der folgenden Zugriffssteuerungsmethoden aus:
Weisen Sie die Datenbankrolle DATA_METRIC_USER der Rolle des Tabelleneigentümers zu, d. h. der Rolle mit der Berechtigung OWNERSHIP für die Tabelle. Diese Datenbankrolle hat die USAGE-Berechtigung für das Schema SNOWFLAKE.CORE und die Berechtigung USAGE für alle System-DMFs im Schema SNOWFLAKE.CORE.
Weisen Sie der Rolle des Tabelleneigentümers außerdem die folgenden Berechtigungen zu:
Berechtigung
Objekt
Anmerkungen
EXECUTE DATA METRIC FUNCTION
Konto
Mit dieser Berechtigung können Sie steuern, welche Rollen Zugriff auf serverlose Computeressourcen haben, um die System-DMF aufzurufen.
USAGE
Datenbank, Schema
Diese Objekte sind die Datenbank und das Schema, die die „table.referenced“-Tabelle“enthalten, mit der die DMF verknüpft ist.
Weisen Sie IMPORTED PRIVILEGES in der SNOWFLAKE-Datenbank der Rolle des Tabelleneigentümers zu. Weitere Informationen dazu finden Sie unter Ermöglicht anderen Rollen die Verwendung von Schemas in der SNOWFLAKE-Datenbank..
Verwenden Sie die Rolle ACCOUNTADMIN.
Eine Anleitung zum Erstellen einer kundenspezifischen Rolle mit einer bestimmten Gruppe von Berechtigungen finden Sie unter Erstellen von kundenspezifischen Rollen.
Allgemeine Informationen zu Rollen und Berechtigungen zur Durchführung von SQL-Aktionen auf sicherungsfähigen Objekten finden Sie unter Übersicht zur Zugriffssteuerung.
Beispiel¶
Ermitteln der Anzahl der doppelten US-Sozialversicherungsnummern in der Spalte SSN
:
SELECT SNOWFLAKE.CORE.DUPLICATE_COUNT(
SELECT
ssn
FROM hr.tables.empl_info
);
+---------------------------------------------------------------------+
| SNOWFLAKE.CORE.DUPLICATE_COUNT(SELECT ssn FROM hr.tables.empl_info) |
+---------------------------------------------------------------------+
| 0 |
+---------------------------------------------------------------------+