# 移行結果統計情報表示スクリプト

## 概要

移行処理の結果を詳細な統計情報として表示するスクリプトです。Docker Compose環境で実行可能で、移行データの品質チェックや分析に役立ちます。

## 実行方法

### 1. Docker Composeで実行

```bash
# 統計情報を表示
docker compose exec app python migration_statistics.py

# または Makeタスクを使用
make migration-stats
```

### 2. 他の移行関連コマンド

```bash
# 移行実行
make migration-run

# Location2025移行
make migration-location2025

# データ保護移行
make migration-data-protection

# データベースシェル
make db-shell

# アプリケーションログ確認
make app-logs
```

## 表示される統計情報

### 📊 基本統計情報
- 各テーブルのレコード数
- 全体のデータ量概要

### 🎯 イベント別統計
- 登録イベント一覧
- イベント別参加チーム数、メンバー数、エントリー数

### 📍 GPSチェックイン統計
- 総チェックイン数、参加チーム数
- 時間帯別チェックイン分布
- CP利用ランキング（上位10位）

### 👥 チーム統計
- 総チーム数、クラス数
- クラス別チーム分布
- 平均メンバー数

### 🔍 データ品質チェック
- 重複データチェック
- 異常時刻データチェック
- データ整合性チェック

### 📄 JSON出力
- 統計情報をJSONファイルで出力
- 外部システムでの利用や保存に便利

## 出力例

```
================================================================================
📊 移行データ基本統計情報
================================================================================

📋 テーブル別レコード数:
テーブル名                 日本語名           レコード数
-----------------------------------------------------------------
rog_newevent2             イベント                    12件
rog_team                  チーム                     450件
rog_member                メンバー                 1,200件
rog_entry                 エントリー                 450件
rog_gpscheckin           GPSチェックイン           8,500件
rog_checkpoint           チェックポイント             800件
rog_location2025         ロケーション2025             50件
rog_customuser           ユーザー                    25件
-----------------------------------------------------------------
合計                                              11,487件

================================================================================
🎯 イベント別統計情報
================================================================================

📅 登録イベント数: 12件

イベント詳細:
ID  イベント名           開催日      登録日時
------------------------------------------------------------
 1  美濃加茂            2024-05-19  2024-08-25 10:30
 2  岐阜市              2024-04-28  2024-08-25 10:30
 3  大垣２              2024-04-20  2024-08-25 10:30
...
```

## トラブルシューティング

### データベース接続エラー
```bash
# コンテナの状態確認
docker compose ps

# PostgreSQLログ確認
make db-logs

# アプリケーションログ確認
make app-logs
```

### 環境変数の確認
```bash
# 環境変数が正しく設定されているか確認
docker compose exec app env | grep POSTGRES
```

### 手動でのデータベース接続テスト
```bash
# PostgreSQLコンテナに直接接続
docker compose exec postgres-db psql -U admin -d rogdb

# テーブル確認
\dt

# 基本的なクエリテスト
SELECT COUNT(*) FROM rog_gpscheckin;
```

## 関連ファイル

- `migration_statistics.py` - 統計表示メインスクリプト
- `migration_final_simple.py` - GPS記録移行スクリプト
- `migration_location2025_support.py` - Location2025移行スクリプト
- `migration_data_protection.py` - データ保護移行スクリプト
- `Makefile` - 実行用タスク定義

## 注意事項

- Docker Composeが正常に起動していることを確認してください
- PostgreSQLコンテナが稼働していることを確認してください
- 統計情報は実行時点のデータベース状態を反映します
- JSON出力ファイルは `/app/` ディレクトリに保存されます
