Count e groubBy

martedì 25 maggio 2010 - 15.02

ciccioherz Profilo | Junior Member

chiedo scusa per la domanda banale, ma non riesco a venirne a capo.
ho una tabella di questo tipo:
id - nome
-----------
1 - pippo
2 - pluto
3 - alex
4 - pluto
5 - pippo
-------------
il risultato che vorrei ottenere è:
id - nome - numeroTotaleDeiNomi

eseguendo una cosa del tipo
select id, nome, count(*) as totaleNomi from tabella groupBy nome
ho errore, perche nella groupby è richiesta ovviamente anche la colonna id.

in che modo posso ottenere quindi il risultato come quello di sotto?
id - nome - totaleNomi
1 - pippo - 2
2 - pluto - 2
3 - alex - 1

grazie

nico839 Profilo | Senior Member

ciao, prova con

select id, nome, count(*) as totaleNomi from tabella groupBy nome,id
Ciao.
Nicolas

lbenaglia Profilo | Guru

>in che modo posso ottenere quindi il risultato come quello di
>sotto?
>id - nome - totaleNomi
>1 - pippo - 2
>2 - pluto - 2
>3 - alex - 1

Ciao,

Osserva il seguente esempio:

USE tempdb; CREATE TABLE dbo.foo( c1 int NOT NULL, c2 varchar(10) NOT NULL ); INSERT dbo.foo VALUES (1, 'pippo') , (2, 'pluto') , (3, 'alex') , (4, 'pluto') , (5, 'pippo'); SELECT MIN(c1) AS id, c2 AS nome, COUNT(*) AS totaleNomi FROM dbo.foo GROUP BY c2 ORDER BY id; /* Output: id nome totaleNomi ----------- ---------- ----------- 1 pippo 2 2 pluto 2 3 alex 1 (3 row(s) affected) */ DROP TABLE dbo.foo;

>grazie
Prego.

Ciao!
--
Lorenzo Benaglia
Microsoft MVP - SQL Server
http://blogs.dotnethell.it/lorenzo/
http://italy.mvps.org
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2024
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5