📣新登場!TiDB Cloud BYOC、TiDB Cloud Filesystem、PostgreSQL-compatible TiDB Cloud Starter がパブリックプレビュー中。このページは自動翻訳されたものです。原文はこちらからご覧ください。

GEN_RANDOM_UUID



バージョン 1.2.658 以降では、バージョン 7 に基づくランダム UUID を生成します。以前は、この関数はバージョン 4 に基づく UUID を生成していました。

構文

GEN_RANDOM_UUID()

エイリアス

なぜ UUID v7 を使うのか

  • 時間ベースの順序付け: UUID v7 にはタイムスタンプが含まれているため、イベントやレコードを作成時刻に基づいて時系列順に並べることができます。これは、アクションの順序を追跡する必要がある場合に特に便利です。

  • 時系列ソート: UUID v7 は UUID が作成時刻順に並ぶことを保証するため、イベントログや監査証跡の管理など、イベントを時間順にソートする必要があるシナリオに最適です。

バージョン情報

  • バージョン 1.2.658 以降: UUID のバージョンが v4 から v7 にアップグレードされました。
  • バージョン 1.2.658 より前: UUID の生成は v4 に基づいていました。

例

イベントを記録するアプリケーションでは、アクションの正しいシーケンスを維持することが不可欠です。UUID v7 は各イベントが時系列順になることを保証するため、アクションを時系列で簡単に追跡できます。

-- Log a user logging in SELECT GEN_RANDOM_UUID(), 'User logged in' AS event, CURRENT_TIMESTAMP AS event_time; -- Log a user making a purchase SELECT GEN_RANDOM_UUID(), 'User made a purchase' AS event, CURRENT_TIMESTAMP AS event_time;

これらのクエリの結果は、次のようになります。

┌──────────────────────────────────────────────────────────────────────────────────────────┐ │ gen_random_uuid() │ event │ event_time │ ├──────────────────────────────────────┼──────────────────────┼────────────────────────────┤ │ 019329e6-26a2-7b01-b9f5-1c3c02600578 │ User logged in │ 2024-11-14 08:59:29.313906 │ │ 019329e6-329e-73c3-b0a8-a413ce298607 │ User made a purchase │ 2024-11-14 08:59:32.381497 │ └──────────────────────────────────────────────────────────────────────────────────────────┘

gen_random_uuid() の値がイベントの発生順に生成されていることに注目してください。これにより、時系列順を簡単に管理できます。

このページは役に立ちましたか?