Kategorien:

Systemfunktionen, Tabellenfunktionen

SYSTEM$DATA_METRIC_SCAN

Gibt die Zeilen zurück, die durch eine Datenqualitätsmetrik als Daten identifiziert wurden, die eine Datenqualitätsprüfung nicht bestanden haben. Wenn Sie zum Beispiel die Datenmetrikfunktion NULL_COUNT als Argument verwenden, gibt die Funktion die Zeilen in der Tabelle zurück, die einen NULL-Wert in einer bestimmten Spalte enthalten.

Syntax

SYSTEM$DATA_METRIC_SCAN(
  REF_ENTITY_NAME  => '<object>'
  , METRIC_NAME  => '<data_metric_function>'
  , ARGUMENT_NAME => '<column>'
   [ , AT_TIMESTAMP => '<timestamp>' ] )
Copy

Argumente

Benötigt:

REF_ENTITY_NAME => 'object'

Name der Tabelle oder Ansicht, auf der die angegebene Datenmetrikfunktion ausgeführt wird. Die Funktion gibt Zeilen aus diesem Objekt zurück.

METRIC_NAME => 'data_metric_function'

Name der System-Datenmetrikfunktion, die Sie ausführen möchten, um die angegebene Tabelle oder Ansicht auszuwerten. Nur die folgenden Systemfunktionen werden unterstützt:

  • SNOWFLAKE.CORE.NULL_COUNT

  • SNOWFLAKE.CORE.NULL_PERCENT

  • SNOWFLAKE.CORE.BLANK_COUNT

  • SNOWFLAKE.CORE.BLANK_PERCENT

  • SNOWFLAKE.CORE.DUPLICATE_COUNT

ARGUMENT_NAME => 'column'

Name der Spalte in der angegebenen Tabelle oder Ansicht, die als Argument an die angegebene Datenmetrikfunktion übergeben wird.

Optional:

AT_TIMESTAMP => 'timestamp'

Zeitstempel, der als Argument übergeben wird, um die Ergebnisse einer DMF-Auswertung der Tabelle oder Ansicht in der Vergangenheit zu überprüfen.

Rückgabewerte

Zeilen aus der angegebenen Tabelle oder Ansicht

Zugriffssteuerungsrechte

Die Ausführung dieser Funktion erfordert die folgenden Berechtigungen:

  • SELECT auf der angegebenen Tabelle.

  • USAGE der angegebenen Datenmetrikfunktion

Nutzungshinweise

  • Diese Funktion unterstützt keine benutzerdefinierten Kennzahlen.

  • Wenn die angegebene Tabelle durch eine Richtlinie geschützt ist, wie z. B. eine Maskierungsrichtlinie oder eine Zeilenzugriffsrichtlinie, gibt die Funktion möglicherweise unerwartete oder unvollständige Daten zurück, da die Ergebnisse von der Rolle des Benutzers bei der Ausführung der Funktion abhängen.

Beispiele

Da die Systemmetrik SNOWFLAKE.CORE.NULL_COUNT die Gesamtzahl der NULL-Werte in einer bestimmten Spalte zurückgibt, gibt das Folgende die Zeilen der Tabelle employeesTable zurück, die NULL-Werte in der Spalte SSN haben.

SELECT *
  FROM TABLE(SYSTEM$DATA_METRIC_SCAN(
    REF_ENTITY_NAME  => 'governance.sch.employeesTable',
    METRIC_NAME  => 'snowflake.core.null_count',
    ARGUMENT_NAME => 'SSN'
  ));
Copy

In Anbetracht der Tatsache, dass die Systemmetrik SNOWFLAKE.CORE.BLANK_COUNT die Anzahl der leeren Werte in einer Spalte zurückgibt, gibt die folgende Funktion die Zeilen der employeesTable-Tabelle zurück, die in der Version der Tabelle, die zu einem bestimmten Zeitpunkt in der Vergangenheit existierte, einen leeren Wert in der name-Spalte hatten.

SELECT *
  FROM TABLE(SYSTEM$DATA_METRIC_SCAN(
    REF_ENTITY_NAME  => 'governance.sch.employeesTable',
    METRIC_NAME  => 'snowflake.core.blank_count',
    ARGUMENT_NAME => 'name',
    AT_TIMESTAMP => '2024-08-28 02:00:00 -0700'
  ));
Copy