SlotKeeper 設計と品質

get_reservation query

001_select_reservations.sql

SQL種別

SELECT

SQLの概要

予約詳細を返すため、指定した予約を取得する。

利用するテーブル

  • reservations

引数

DDLテーブル DDL項目 SQL項目 日本語名 型 nullable
reservations reservation_id reservation_id 予約ID。 VARCHAR(36) no

戻り値

DDLテーブル DDL項目 SQL項目 日本語名 型 nullable
reservations reservation_id reservation_id 予約ID。 VARCHAR(36) no
reservations resource_id resource_id 予約対象の資源ID。 VARCHAR(36) no
reservations owner_principal_id owner_principal_id 予約者の認証subject。 VARCHAR(200) no
reservations start_at start_at 予約開始日時。UTCで保存する。 TIMESTAMPTZ no
reservations end_at end_at 予約終了日時。UTCで保存し、この時刻を含まない。 TIMESTAMPTZ no
reservations purpose purpose 予約目的。1〜200文字。本人と管理者だけに返す。 VARCHAR(200) no
reservations status status 予約状態。confirmedまたはcancelled。 VARCHAR(20) no
reservations row_version row_version 楽観ロック用の行バージョン。 INT no

条件

  • WHERE
    • reservations.reservation_id = @reservation_id

002_select_reservation_events.sql

SQL種別

SELECT

SQLの概要

予約詳細の履歴を返すため、作成と取消の履歴を発生順に取得する。

利用するテーブル

  • reservation_events

引数

DDLテーブル DDL項目 SQL項目 日本語名 型 nullable
reservation_events reservation_id reservation_id 対象の予約ID。 VARCHAR(36) no

戻り値

DDLテーブル DDL項目 SQL項目 日本語名 型 nullable
reservation_events event_id event_id 履歴ID。 VARCHAR(36) no
reservation_events reservation_id reservation_id 対象の予約ID。 VARCHAR(36) no
reservation_events actor_principal_id actor_principal_id 操作した利用者の認証subject。 VARCHAR(200) no
reservation_events action action 操作種別。createdまたはcancelled。 VARCHAR(20) no
reservation_events occurred_at occurred_at 操作日時。 TIMESTAMPTZ no

条件

  • WHERE
    • reservation_events.reservation_id = @reservation_id