# UUID 関数

# generateUUIDv4

バージョン4のUUIDを生成します。

構文

generateUUIDv4([x])

引数

  • x — サポートされているデータ型のいずれかを結果とする式。結果の値は破棄されますが、式自体はクエリ内で関数が複数回呼び出される場合に共通の副式消去をバイパスするために使用されます。オプションのパラメータです。

返される値

  • UUID型の値。

  • この例では、UUID型のカラムを持つテーブルを作成し、テーブルに値を挿入しています。
CREATE TABLE t_uuid (x UUID) ENGINE=TinyLog;
INSERT INTO t_uuid SELECT generateUUIDv4();
SELECT  FROM t_uuid;
┌────────────────────────────────────x─┐
│ bba9f24d-c056-4482-ba63-6f1216ed0e73 │
└──────────────────────────────────────┘
  • 1行で複数の値を生成する
SELECT generateUUIDv4(1), generateUUIDv4(2)
┌─generateUUIDv4(1)────────────────────┬─generateUUIDv4(2)────────────────────┐
│ c6518cf3-9048-4198-b94c-72c7c2990535 │ dd45d634-f3cf-4262-b6eb-b16f77d40fe3 │
└──────────────────────────────────────┴──────────────────────────────────────┘

# toUUID

String型の値をUUID型に変換します。

toUUID(String)

返される値

UUID型の値。

SELECT toUUID('61f0c404-5cb3-11e7-907b-a6006ad3dba0') AS uuid
┌─uuid─────────────────────────────────┐
│ 61f0c404-5cb3-11e7-907b-a6006ad3dba0 │
└──────────────────────────────────────┘