2012-01-08 20 views
5

Tengo una tabla que registra ubicaciones de usuario desde mi aplicación web agregando un código de país a la columna 'countrycode' de cada fila. Cada fila representa una visita a un área particular.Contando y combinando filas

así que tengo algunos datos como

COL1 COL2 COL3 countrycode 
asd  asd  asd  NZ 
asd  asd  asd  NZ 
asd  asd  asd  NZ 
asd  asd  asd  US 
asd  asd  asd  US 

Lo que quiero hacer es consultar esta tabla y me muestran algo como esto más adelante

Country Count 
    NZ  3 
    US  2 

pero necesito que sea capaz de añadir una fila para cualquier otro código de país que haya surgido. No puedo conseguir mi cabeza alrededor de una manera de hacer esto, sé que necesito para utilizar la función count() de alguna manera ...

Respuesta

6

Para obtener su salida de ejemplo, se puede utilizar GROUP BY y COUNT()

SELECT Country, COUNT(*) 
FROM myTable 
GROUP BY Country 

COUNT(*) contará cada fila y GROUP BY Country dividirá los resultados por país. Los resultados serán dinámicos según los datos de la tabla, por lo que no es necesario cambiar la consulta si agrega más registros en la tabla con diferentes países.

Ver Group By in Books online

+0

¡Gracias trabajado perfectamente! Marcaré como respuesta cuando pueda. –

+0

¡Me alegro de poder ayudar! –

+0

Es posible que también desee agregar "ORDEN POR CUENTA (*) DESC" si desea que se devuelvan en orden de frecuencia descendente. – GilM