私はこの非常に複雑な問題を抱えていると思います。私のMysql DBは次のようになります。
旅行:
- ID
- マイレージ
- 車のID
- ドライバーID
運転手:
- ID
- 名前
車:
- ID
- モデル
私が達成する必要があるのは、車のデータを集計するテーブルですが、別のドライバーの場合は次のようになります。
- 車: 総走行距離, ... (この車の、すべてのドライバーの合計)
- ドライバー: 総走行距離, ... (この車の X1 ドライバーのみ)
- ドライバー: 総走行距離, ... (この車の X2 ドライバーのみ)
- 車: 総走行距離, ... (この車の、すべてのドライバーの合計)
- ドライバー: 総走行距離, ... (この車の X1 ドライバーのみ)
- ドライバー: 総走行距離, ... (この車の X2 ドライバーのみ)
等々。最初のステップが完了したので、データを車の ID でグループ化しました。車ごとに別々のドライバーの同じ統計を取得する必要があります。
簡単にできますか?
助けてくれてありがとう
@編集
現在のクエリ
"SELECT SUM(`przejazdy`.`przebieg`) as przebieg, SUM(`przejazdy`.`norma`) as norma, SUM(`przejazdy`.`faktyczne`) as zuzycie, `wozy`.`nr wozu`, `kierowcy`.`nr kierowcy` FROM `przejazdy` JOIN `wozy` ON `wozy`.`id` = `przejazdy`.`nr wozu` JOIN `kierowcy` ON `kierowcy`.`id` = `przejazdy`.`nr kierowcy` GROUP BY `przejazdy`.`nr wozu`, `przejazdy`.`nr kierowcy` WITH ROLLUP";
それは私に「フラット」配列を返しますが、あまり役に立ちません-2レベルの配列が必要です:
キー: 車の ID -> ドライバーの ID、走行距離、その他の統計情報を含むデータの配列と、車のデータ全体の配列 "total" を含みます