私は、ユーザーテーブル内の都市と国の異なるセットの出現を数えようとしています。SQL内の異なる複数の列の出現をカウントする
テーブルはと同様にして設定されている:私は必要なもの
userid city country
------ --------- --------------
1 Cambridge United Kingdom
2 London United Kingdom
3 Cambridge United Kingdom
4 New York United States
は、すべての都市のリスト、出現回数を持つ国のペアである:
Cambridge, United Kingdom, 2
London, United Kingdom, 1
New York, United States, 1
は現在、私は、SQLクエリを実行します別のペアを取得する:
$array = SELECT DISTINCT city, country FROM usertable
次に、それをPHPで配列に読み込み、配列、配列内の各行について、それぞれ発生をカウントするクエリを実行している:
SELECT count(*) FROM usertable
WHERE city = $array['city']
AND country = $array['country']
私はSQLの私のわずかな把握が何か欠けていると仮定しています - 好ましくは介入せずに、何がこれを行うための正しい方法だろうがPHPの?
Select city, country, count(*) as counter
from usertable
group by city, country
応答の驚異的な速度 - 非常に感謝して、完璧に働いた(私にできるだけ早く答えを受け入れる) –