Ver Mensaje Individual
  #4 (permalink)  
Antiguo 21/06/2011, 07:46
cucuru
 
Fecha de Ingreso: marzo-2009
Mensajes: 509
Antigüedad: 15 años, 1 mes
Puntos: 17
Respuesta: count independientes

Muchísimas gracias!!! las dos opciones funcionan perfectas! ahora, me gustaría rizar un poquito más el rizo pero creo que no se puede, a ver si es así...

Voy a poner un ejemplo:

Código:
mysql> select * from padre;
+-------------+----------------+
| nombrePadre | correoPadre    |
+-------------+----------------+
| Juan        | [email protected]  |
| Luis        | [email protected]  |
| Paqui       | [email protected] |
| Cristina    | [email protected]  |
+-------------+----------------+
4 rows in set (0.00 sec)

mysql> select * from hijo;
+------------+----------+
| nombreHijo | padre    |
+------------+----------+
| María      | Luis     |
| María      | Cristina |
| Pepe       | Juan     |
+------------+----------+
3 rows in set (0.00 sec)
Me gustaría extraer el correo elctrónico y número de padres de los niños que se llaman María.

Código:
mysql> select correoPadre, sum(if(nombreHijo = 'Maria',1,0)) from padre,hijo where nombreHijo='Maria' AND nombrePadre = padre;
+---------------+-----------------------------------+
| correoPadre   | sum(if(nombreHijo = 'Maria',1,0)) |
+---------------+-----------------------------------+
| [email protected] |                                 2 |
+---------------+-----------------------------------+
1 row in set (0.00 sec)

Me falta el correo de su madre, está claro que es porque sum trunca el resultado a una única fila (lo mismo me pasaría con la opción de GROUP BY), ¿podría obtener dos filas?

O quizá en lugar de dos filas un número variable de columnas "correoPadre", que sea 1, 2 o las que hiciera falta?

Gracias!