Zum Inhalt springen

Eine erweiterte Version von TO_BINARY, die einen Eingabeausdruck in einen Binärwert umwandelt und NULL zurückgibt, wenn die Umwandlung fehlschlägt, statt einen Fehler auszulösen.

Siehe auch: TO_BINARY

func.try_to_binary( <expr> )
func.try_to_binary('Databend')
┌───────────────────────────────────────┐
│ func.try_to_binary('Databend') │
├───────────────────────────────────────┤
│ 4461746162656E64 │
└───────────────────────────────────────┘
TRY_TO_BINARY( <expr> )

Dieses Beispiel wandelt die JSON-Daten erfolgreich in Binärdaten um:

SELECT TRY_TO_BINARY(PARSE_JSON('{"key":"value", "number":123}')) AS binary_variant_success;
┌──────────────────────────────────────────────────────────────────────────┐
│ binary_variant │
├──────────────────────────────────────────────────────────────────────────┤
│ 40000002100000031000000610000005200000026B65796E756D62657276616C7565507B │
└──────────────────────────────────────────────────────────────────────────┘

Dieses Beispiel zeigt, dass die Funktion die Umwandlung nicht durchführt, wenn die Eingabe NULL ist:

SELECT TRY_TO_BINARY(PARSE_JSON(NULL)) AS binary_variant_invalid_json;
┌─────────────────────────────┐
│ binary_variant_invalid_json │
├─────────────────────────────┤
│ NULL │
└─────────────────────────────┘