- ベストアンサー
MySQLで項目別の合計件数を一文で取得する方法
- MySQLを使用して、組ごとの登録人数を一文で集計する方法について教えてください。
- 氏名と組の情報を持つマイテーブルから、組ごとの登録人数を集計する方法をご教示してください。
- 組ごとの登録人数を一文で取得するために、6回のSQL文を発行する必要があるのでしょうか?
- みんなの回答 (2)
- 専門家の回答
質問者が選んだベストアンサー
$rstをechoしちゃまずいでしょう(苦笑) mysql_fetch_array()してください。 $rst = mysql_query($sql, $con); $table=""; while($row=mysql_fetch_array($rst,MYSQL_ASSOC)){ $table.=<<<eof <tr> <td>{$row["kumi"]}組</td> <td>{$row["cnt"]}名</td> </tr> eof; } $table="<table>{$table}</table>"; print $table;
その他の回答 (1)
- yambejp
- ベストアンサー率51% (3827/7415)
SELECT kumi,COUNT(*) AS CNT FROM マイテーブル GROUP BY kumi でよいのでは?
補足
yamabejpさん、いつもお世話になります。 GROUP BY ってこういう使い方をするのですね(^^;大変参考になりましたm(_ _)m phpMyAdminで試したら、見事にうまくいきました。。。 すみません、もう一歩ご教示下さい。 $con = mysql_connect($DBSERVER, $DBUSER, $DBPASSWORD); $selectdb = mysql_select_db($DBNAME, $con); $sql = "SELECT kumi,COUNT(*) AS CNT FROM マイテーブル GROUP BY kumi"; $rst = mysql_query($sql, $con); echo $rst; とやると、「Resource id #7」と返ってきますが、 <table>タグで結果を以下のように組むにはどのように記述したら いいでしょうか。 ----------- | 1 | 23名 | ------------ | 2 | 25名 | ------------ | 3 | 25名 | ------------ | 4 | 24名 | ------------ | 5 | 27名 | ------------ | 6 | 22名 | ------------ 何卒、よろしくお願い致します。
お礼
yamabejpさん、早速のご教示ありがとうございました。 >$rstをechoしちゃまずいでしょう(苦笑) お恥ずかしい話です、、、、 結果ですが、おかげさまでご教示の while($row=mysql_fetch_array($rst,MYSQL_ASSOC)){ で解決できました。 大変助かりました。今後ともよろしくお願い致します。