コンテンツにスキップ

アンケート集計ビュー

概要

Unity Catalog(カタログ cs / スキーマ cs_dm)上の集計済みビュー。アプリはこれらを読み取るだけで、書き込みは行わない。

テーブル定義

dm_vis_jreslso_tokyo23_comp_test(集計ビュー)

アプリが可視化に使う中心的なビュー。UI で選択できる他のテーブルも同じ列構成を前提にしている。

論理名 物理名 カラム名 データ型 主キー リレーション ユニーク NULL許可 デフォルト値 備考
アンケート集計 dm_vis_jreslso_tokyo23_comp_test question_number string ◯ 設問番号。表示ラベルとソートに使う
question_type string ◯ Text Select / Free Text。UI の表示分岐に使う
question string ◯ 設問文。質問のグルーピングキー
choice_text string ◯ 選択肢テキスト、または自由記述の回答
sum_answer bigint ◯ この選択肢の回答数
total bigint ◯ 設問の総回答数
rate double ◯ 回答比率(0〜1)
n bigint ◯ ビューが公開する n 値
is_comp string ◯ 比較群ラベル。アプリは 'すべての有効回答' のみ取得する

ut_dm_ana_jreslso_tokyo(回答者属性)

集計の元になる回答者属性テーブル。Pydantic モデルは生成済みだが、現状どの API からも参照されていない。

論理名 物理名 カラム名 データ型 主キー リレーション ユニーク NULL許可 デフォルト値 備考
回答者属性 ut_dm_ana_jreslso_tokyo user_no string ◯ 回答者識別子
性別 string ◯
年齢層 string ◯
婚姻状況 string ◯
居住地域 string ◯
スマホ利用サービス string ◯
家族構成 string ◯
職業 string ◯
企業形態 string ◯
業務端末環境 string ◯

リレーション

  • ビュー同士に外部キー制約はない。ut_dm_ana_jreslso_tokyo は集計ビューの元データという論理的な関係にとどまる。

インデックス

  • 未整備 — Unity Catalog のビューのため、アプリ側で管理するインデックスはない。SQL Warehouse 側の最適化に依存する。

注記

  • 主キーは定義されていない。1 行は「設問 × 選択肢 × 比較群」の組で一意になる想定。
  • 上記の列定義は backend/models/dm_vis_jreslso_tokyo23_comp_test.py と backend/models/ut_dm_ana_jreslso_tokyo.py(backend/generate_models_from_databricks.py による自動生成)から起こしたもの。正確な型と NULL 制約は Unity Catalog を確認すること。
  • API のレスポンス行モデル QuestionDataRow は extra="allow" のため、テーブル固有の追加列はそのままフロントエンドへ渡る。
  • 集計値の取得クエリは常に is_comp = 'すべての有効回答' で絞られる(backend/sql/table_data.py)。
  • モデルを再生成する場合は python backend/generate_models_from_databricks.py --catalog cs --schema cs_dm --tables <table> を実行する。ただしこのスクリプトは backend/models/__init__.py を生成モデルだけで上書きするため、実行後に api / data_sql の import を手で戻す必要がある。