Ver Mensaje Individual
  #2 (permalink)  
Antiguo 13/05/2011, 08:15
leonardo_josue
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 4 meses
Puntos: 447
Respuesta: Consulta de dos campos

Hola Tarzan:

Como tienes una doble referencia a una tabla, tienes que hacer un doble INNER JOIN a la tabla, utilizando alias. Sería más o menos así:

Código MySQL:
Ver original
  1. mysql> create table Retos (idReto int, idUserA int, idUserB int);
  2. Query OK, 0 rows affected (0.11 sec)
  3.  
  4. mysql> insert into Retos values (1, 3, 5);
  5. Query OK, 1 row affected (0.11 sec)
  6.  
  7. mysql> select * from retos;
  8. +--------+---------+---------+
  9. | idReto | idUserA | idUserB |
  10. +--------+---------+---------+
  11. |      1 |       3 |       5 |
  12. +--------+---------+---------+
  13. 1 row in set (0.00 sec)
  14.  
  15. mysql> create table usuarios (idUser int, nombre varchar(100));
  16. Query OK, 0 rows affected (0.47 sec)
  17.  
  18. mysql> insert into usuarios values (3, 'Juanito'), (5, 'Jorgito');
  19. Query OK, 2 rows affected (0.25 sec)
  20. Records: 2  Duplicates: 0  Warnings: 0
  21.  
  22. mysql> select * from usuarios;
  23. +--------+---------+
  24. | idUser | nombre  |
  25. +--------+---------+
  26. |      3 | Juanito |
  27. |      5 | Jorgito |
  28. +--------+---------+
  29. 2 rows in set (0.00 sec)
  30.  
  31. mysql> select R.idReto, U1.nombre nombreA, U2.nombre nombreB from
  32.     -> Retos R
  33.     -> inner join usuarios U1 on R.idUserA = U1.idUser
  34.     -> inner join usuarios U2 on R.idUserB = U2.idUser;
  35. +--------+---------+---------+
  36. | idReto | nombreA | nombreB |
  37. +--------+---------+---------+
  38. |      1 | Juanito | Jorgito |
  39. +--------+---------+---------+
  40. 1 row in set (0.02 sec)

Saludos
Leo.