現在、データベース内の名前の一意の出現回数と名前 (最も一般的な 100 個の名前) を出力する次のコードがあります。コードは正常に動作し、出力は次のようになります。
Smith 71
Ryan 49
White 39
Brown 23
代わりに名前のアルファベット順にソートされた出力で、そのリストの隣のテーブルでリストを繰り返したいと思います。
Smith 71 Brown 23
Ryan 49 Ryan 49
White 39 Smith 71
Brown 23 White 39
mysql検索の一部としてそれを行う方法はありますか?または、最初のループを実行するときに値を配列に格納してから、配列を並べ替えて出力する必要がありますか?
後者の場合、効率的なコードを提案してください。
$query2 = "SELECT family_name, COUNT(*) as count FROM nametable
WHERE locationkey = $location
GROUP BY family_name ORDER BY count DESC";
$table2 = mysql_query($query2);
$count2 = mysql_num_rows($table2);
$tot = 0;
echo '<table>';
while ($tot < $count2 && $tot < 100) {
$rec2 = mysql_fetch_array($table2);
echo '<tr><td>',$rec2[0],'</td><td width="40"> </td><td>',$rec2[1], '</td></tr>';
$tot++;
}
echo '</table>';