

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

# UNHEX 関数
<a name="UNHEX"></a>

UNHEX 関数は、16 進数の文字列を元の文字列表現に変換します。

この関数は、16 進形式で保存または送信されたデータを操作する必要があり、さらに処理または表示するために元の文字列表現を復元する必要がある場合に役立ちます。

UNHEX 関数は[、HEX 関数](HEX.md)のカウンターパートです。

## 構文
<a name="UNHEX-syntax"></a>

```
unhex(expr)
```

## 引数
<a name="UNHEX-arguments"></a>

 expr**   
16 進数文字の STRING 式。

## 戻り型
<a name="UNHEX-returns"></a>

UNHEX は BINARY を返します。

*expr* の長さが奇数の場合、最初の文字は破棄され、結果は null バイトで埋められます。*expr* に 16 進数以外の文字が含まれている場合、結果は NULL です。

## 例
<a name="UNHEX-example"></a>

次の例では、UNHEX() 関数と DECODE() 関数を一緒に使用して、16 進数の文字列を元の文字列表現に変換します。クエリの最初の部分では、UNHEX() 関数を使用して 16 進文字列 '537061726B2053514C' をバイナリ表現に変換します。クエリの 2 番目の部分では、DECODE() 関数を使用して、UNHEX() 関数から取得したバイナリデータを文字列に変換し、'UTF-8' 文字エンコーディングを使用します。クエリの出力は、16 進数に変換され、文字列に戻された元の文字列「Spark\$1SQL」です。

```
SELECT decode(unhex('537061726B2053514C'), 'UTF-8');
 Spark SQL
```