Ver Mensaje Individual
  #7 (permalink)  
Antiguo 16/04/2009, 16:02
Avatar de gnzsoloyo
gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 17 años, 3 meses
Puntos: 2658
Respuesta: Contar número de filas repetidas

Se puede hacer, pero el código es un poco complicado.
Requiere:
1. Iniciar una variable incremental dinámicamente en una consulta y otra variable de control de entidad.
2. El resultado de esa consulta se debe ordenar por nom_ent .
3. Hacer que sume si y sólo si la entidad es igual a la variable de control, sino que reinicie la incremental.
Algo así:
Código sql:
Ver original
  1. SELECT
  2.    nom_ent,
  3.    nom_mun,
  4.    municipio,
  5.    orden
  6. FROM
  7.    (SELECT
  8.         nom_ent,
  9.         nom_mun,
  10.         municipio,
  11.         (IF(@MUNI = municipio,(@SUMA:=@SUMA+1),@SUMA:=1)) orden,
  12.         @MUNI := municipio
  13.   FROM
  14.         (SELECT
  15.               CE.nom_ent,
  16.               CE.nom_mun,
  17.               CE.municipio,
  18.               @SUMA:=0,
  19.               @MUNI:=CE.municipio
  20.         FROM cat_entmun INNER JOIN pond_mun PM USING(municipio,entidad)
  21.         WHERE pm.ciclo_pre='1' AND pm.ponderacion = 100
  22.         ORDER BY nom_ent) T1
  23.    )T2;

Nota: El orden de las asignaciones (IF(@MUNI = municipio,(@SUMA:=@SUMA+1),@SUMA:=1)) orden, y @MUNI := municipio es mandatorio. No se los puede cambiar o el resultado no se obtendrá.
Pruébalo y me cuentas.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)