Query en MySQL

Iniciado por mark182, 12 Abril 2013, 03:45 AM

0 Miembros y 1 Visitante están viendo este tema.

mark182

Hola como estan?

Estoy pensando como hacer una query y la verdad que no me sale. Les paso a explicar:

- Tengo 2 tablas: Usuarios y Favoritos.
- En la primera tengo todos los datos del usuario
- En la segunda los ID de cada usuario, si uno es "favorito" del otro.

Ahora quiero traer todos los datos de la tabla usuarios y, ademas, identificar cual de todos los usuarios traidos esta agregado como favorito de un usuario x.


Espero que se entiendo, cualquier cosa pongo un ejemplo.
Gracias.

Shell Root

Código (sql) [Seleccionar]
SELECT usu.id, usu.nombre, (SELECT usu.nombre FROM usuario WHERE fav.idUsuario LIMIT 1) FROM usuario usu JOIN favorito fav ON usu.id = fav.idUsuario;

Supongo que con una subquery se puede, aunque la verdad hace rato que no lo hago y puedo estar equivocado :p
Por eso no duermo, por si tras mi ventana hay un cuervo. Cuelgo de hilos sueltos sabiendo que hay veneno en el aire.

s7evin

Buenas tardes,

no sé si ya voy tarde... jeje

(sin saber nombres de tables/columnas)
SELECT
   `usuario`.`ID`,
   `usuario`.`nombre`,
   IFNULL(`favorito`.`usuario_ID`, '') AS `favorito_usuario`
FROM
   `usuario`
   LEFT JOIN
      `favorito`
      ON `favorito`.`usuario_ID` = `usuario`.`ID`
GROUP BY
   `usuario`.`ID`


Espero que te sirva para lo que te propones.
Saludos!