2012-03-14 7 views
1

現在、特定の人物(Ms White)のデータベース内のレコードの量を調べるsqlクエリがあります。テーブル内のすべての姓の関数をどのように繰り返すことができますか?賢明なフォーマット? I BYデータベースから複数の結果を出力する

$query = "SELECT COUNT(Surname) FROM Customers WHERE Surname='White'"; 

答えて

3

探しているものだと思いますか?

select Surname, count(*) as Total from Customers 
group by Surname 

これは、このような結果が返されます:

Person Total 
White  4 
Mustard  2 
Plum  1 
etc... 
+1

で結果を並べ替えることができます(ORDER BYを使用して)ちょうど私が探していた、ありがとう! – William

5

GROUPは、各姓あたりcountで一つだけのクエリを実行する方が良いと思いませんあなたは

SELECT COUNT(*),Surname FROM Customers GROUP BY Surname 
+1

ありがとうございますが、これは論理的な方法でこれらを印刷するにはどうすればよいですか?現在、私が得られるのは一連の数字です(各人の注文数によって異なります)。 – William

+0

2番目の列(姓)を印刷していますか?あなたはまた、姓または数字で –

0

使用

SELECT count(1) as "Counter", surname FROM Customers GROUP BY surname 

をこれは以下のようにあなたの出力が得られます。

Counter + Surname 
++++++++++++++++++++ 
    10  + SN1 
    15  + SN2 
    11  + SN3 
関連する問題