SELECT recipient AS r, sender AS s, COUNT(total) // can't use same alias
FROM privatemessages
WHERE sender = '$userid' AND recipient = '$userid'
GROUP BY s;
次に、結果関数で、カウントを呼び出します
while ($row = $result) {
echo $row['COUNT(total)'];
}
このクエリは期待どおりに機能するはずです。オリジナルの唯一の問題は、デュアルエイリアスと2つの異なるフィールドのグループ化でした。これは2つの別々のクエリで可能ですが、組み合わせると実行できません(少なくともエイリアス、GROUP BYではそうは思わないでください)。
これがあなたのために働くことを願っています。
アップデート
の優れた代替手段COUNT
は、単にnum_rows
...を使用することです。したがって、上記のクエリは次のようになります。
SELECT recipient AS r, sender AS s // can't use same alias
FROM privatemessages
WHERE s = '$userid' AND r = '$userid'
GROUP BY s;
次に、結果関数で、関数を呼び出しnum_rows
ます。
mysql_num_rows($result);