Bir veritabanında eşit değerleri saymak için en iyi yöntem nedir?

2 Cevap php

Ben oldukça büyük bir mysql veritabanı var ve ben kendimi daha iyi açıklamak için, tüm eşit değerleri saymak istiyorum:

Ben birkaç ülke değerleri (vb ABD, İngiltere, MEX.) Sahip bir ülke alanını var ve ben (100 ABD ve 2 İngiltere ve 1000 MEX varsa sonuç 3 olur) yinelenen olmadan ülkelerin sayısını almak istiyorum .

Ben ile gelebilir tek yoludur:

$i="0";
$query = "SELECT DISTINCT country FROM table"; 
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result)){
$i++;
}
echo $i;

Ben gerçekten, belki doğrudan bir sql deyimi trought, bunu başarmak için daha iyi yollar vardır sizce?

Her zaman olduğu gibi nazik yanıtlar için teşekkür ederim.

2 Cevap

Çoğunlukla doğru deyim var, sadece MySQL sizin için sayım yapmak olması gerekir:

SELECT COUNT(DISTINCT country)
FROM table

Ülkeye BY tablo GROUP SELECT ülke, COUNT (ülke)