Kategorien:

Zeichenfolgen- und Binärfunktionen (Komprimierung/Dekomprimierung)

DECOMPRESS_STRING

Dekomprimiert den komprimierten BINARY-Eingabeparameter in eine Zeichenfolge.

Siehe auch:

COMPRESS , DECOMPRESS_BINARY

Syntax

DECOMPRESS_STRING(<input>, <method>)

Argumente

Benötigt:

Eingabe

Ein BINARY-Wert (oder Ausdruck) mit Daten, die mit einer der in COMPRESS angegebenen Komprimierungsmethoden komprimiert wurden.

Methode

Die Komprimierungsmethode, die ursprünglich zum Komprimieren des Eingabewerts Eingabe verwendet wurde. Eine Liste der Komprimierungsmethoden finden Sie unter COMPRESS.

Für die Methode DECOMPRESS_STRING müssen Sie im Gegensatz zur Methode COMPRESS keinen Komprimierungsgrad angeben. Wenn Sie den Komprimierungsgrad angeben, wird dieser von DECOMPRESS_STRING ignoriert und der tatsächliche Komprimierungsgrad verwendet.

Rückgabewerte

Eine Zeichenfolge mit dekomprimierten Daten.

Nutzungshinweise

  • Wenn die Komprimierungsmethode unbekannt oder ungültig ist, schlägt die Abfrage fehl.

  • Der Name der Komprimierungsmethode, z. B. ZLIB, unterscheidet nicht zwischen Groß- und Kleinschreibung.

  • Wenn Sie DECOMPRESS_STRING verwenden, um anstelle einer komprimierten Zeichenfolge einen komprimierten BINARY-Wert zu dekomprimieren, wird nicht zwangsläufig ein Fehler angezeigt. Die Funktion wird zuerst versuchen, den BINARY-Wert als eine Folge von hexadezimalen Zahlen zu behandeln, und danach versuchen, diese hexadezimalen Zahlen in druckbare Zeichen zu konvertieren. Snowflake empfiehlt die Verwendung der Funktion DECOMPRESS_BINARY, um komprimierte Daten zu dekomprimieren, deren Originaldaten BINARY waren.

Beispiele

Dies zeigt, wie Sie eine Zeichenfolge komprimieren und dann wieder auf den ursprünglichen Wert dekomprimieren.

SELECT COMPRESS('Snowflake', 'SNAPPY');
+---------------------------------+
| COMPRESS('SNOWFLAKE', 'SNAPPY') |
|---------------------------------|
| 0920536E6F77666C616B65          |
+---------------------------------+
SELECT DECOMPRESS_STRING(TO_BINARY('0920536E6F77666C616B65', 'HEX'), 'SNAPPY');
+-------------------------------------------------------------------------+
| DECOMPRESS_STRING(TO_BINARY('0920536E6F77666C616B65', 'HEX'), 'SNAPPY') |
|-------------------------------------------------------------------------|
| Snowflake                                                               |
+-------------------------------------------------------------------------+