現在複数の MySQL クエリを使用している集計テーブルを表示しようとしていますが、それらを 1 つに結合できるかどうか疑問に思っていました。
フィールド金額と通貨を含む「支払い」というテーブルがあり、各通貨の要約合計テーブルを表示しようとしています。例として:
<table>
<tr>
<td>USD</td>
<td>EUR</td>
<td>GBP</td>
</tr>
<tr>
<? $q1 = mysqli_query("SELECT sum(amount) as total_USD from payments WHERE currency='USD'");
while($row1 = mysqli_fetch_assoc($q1)){ ?>
<td><? echo number_format($row1['total_USD'],0); ?></td>
<? } ?>
<? $q2 = mysqli_query("SELECT sum(amount) as total_EUR from payments WHERE currency='EUR'");
while($row2 = mysqli_fetch_assoc($q2)){ ?>
<td><? echo number_format($row2['total_EUR'],0); ?></td>
<? } ?>
<? $q3 = mysqli_query("SELECT sum(amount) as total_GBP from payments WHERE currency='GBP'");
while($row3 = mysqli_fetch_assoc($q3)){ ?>
<td><? echo number_format($row3['total_GBP'],0); ?></td>
<? } ?>
</tr>
</table>
実際には、12 の通貨を使用しているため、12 の個別のクエリがありますが、効率が悪いと感じているので、同じ結果を達成するためのより簡単な方法があるかどうか疑問に思っていました。
どうもありがとう!