SQL calcule le pourcentage en utilisant la table self join

J'ai donc ce tableau:

Table SQL

Les colonnes désignent le type de maison, la quantité et le nom de région. J'ai besoin de build une requête qui returnne le pourcentage d'un certain type de maison dans chaque région, comme ceci:

nomRegion tipo Prct Central Casa independiente 23.5 brunca Casa independiente 54.7 chorotega Casa independiente 12.4 .... Casa independiente .... 

J'ai besoin de join la table avec lui-même pour get le nombre de maisons de mon type requirejs par Région et ensuite le split par le nombre total de maisons dans chaque Région. J'ai essayé d'écrire cette requête mais elle renvoie 0 dans tous les champs de pourcentage.

 select T.nomRegion, T.Tipo, (T.Cantidad/SUM(V.Cantidad))*100 from dbo.TipoVivienda T join dbo.TipoVivienda V on T.nomRegion = V.nomRegion where T.Tipo = 'Casa independiente' group by T.nomRegion, T.Tipo, T.Cantidad 

J'ai essayé d'autres variantes, en me basant sur cette question: Problème SQL: Calcul des pourcentages et utilisation de plusieurs jointures dans la même table

 select T.nomRegion, T.Tipo, 100 * (T.Cantidad/V.Cantidad) from dbo.TipoVivienda T inner join (select nomRegion as nomRegion, SUM(Cantidad) as Cantidad from dbo.TipoVivienda group by nomRegion) V on T.nomRegion = V.nomRegion where T.Tipo = 'Casa independiente' group by T.NomRegion, T.Tipo, T.Cantidad, V.Cantidad 

Mais la requête renvoie toujours 0 en pourcentage pour toutes les régions. Je ne sais pas ce que je fais mal ici … J'ai essayé une autre variation de la requête en utilisant des requêtes corrélées mais le résultat est le même:

 select T.nomRegion, T.Tipo, (T.Cantidad / (select SUM(V.cantidad) from dbo.TipoVivienda V where V.nomRegion = T.nomRegion group by V.nomRegion))*100 from dbo.TipoVivienda T where T.tipo = 'Casa independiente' 

Des idées?

Multipliez avec 1.0 pour get des résultats corrects car SQL Server fait l'arithmétique entière.

 (T.Cantidad*1.0/SUM(V.Cantidad))*100 

ou multiplier par 100 d'abord, puis faire la division.

 T.Cantidad*100.0/SUM(V.Cantidad)