特定のカテゴリで見つかった行を返す次のプリペアドステートメントがあります。
if ($stmt = $mysqli->prepare("SELECT Work,Amount from work_times where Category=?")) {
$stmt->bind_param("s", $category);
$stmt->execute();
$stmt->store_result();
$stmt->bind_result($work,$amount);
while ($stmt->fetch()) {
echo $work.": £".$amount." each<br>";
}
私がやりたいのは、これを「作業」列、次に「量」列でグループ化するように調整し、グループごとに1行を返し、各行/グループにSUMとカウントを付けて出力できるようにすることです。このようなもの:
5回のコンサルティングセッション@各50ポンド: 250ポンド
2013年2月1日2013年2月
8日2013年2月
15日2013年2月
22日2013年
3月1日
3回のセラピーセッション@各40ポンド: 120ポンド
2013年2月2日2013年2月
9日2013年2月
16日
2回のセラピーセッション@各20ポンド: 40ポンド
2013年2月3日2013年2月
10日
各行の太字のテキストは、グループ内の行数、金額(セッションごと)、およびグループ内の各行の金額の合計値に対応します。これが明確であることを願っています!
しかし、これを達成するために上記のステートメントをどのように適応させるかはわかりません。
上記は、次の表の結果です。
ID | Work | Amount
1 | Therapy Session | £40 | 2013-02-02
2 | Consultancy Session | £50 | 2013-02-01
3 | Therapy Session | £20 | 2013-02-03
4 | Consultancy Session | £50 | 2013-02-08
5 | Consultancy Session | £50 | 2013-02-15
6 | Therapy Session | £40 | 2013-02-09
7 | Consultancy Session | £50 | 2013-02-22
8 | Therapy Session | £40 | 2013-02-16
9 | Therapy Session | £20 | 2013-02-10
10 | Consultancy Session | £50 | 2013-03-01
上記の出力のように、行数でグループを並べ替えることは、理想的には私が探しているものです。