Ver Mensaje Individual
  #4 (permalink)  
Antiguo 15/12/2011, 14:00
Avatar de leo_
leo_
 
Fecha de Ingreso: abril-2008
Mensajes: 40
Antigüedad: 16 años
Puntos: 11
Respuesta: Como relacionar esta consulta

Hola mira cree las tablas de esta forma:
Código SQL:
Ver original
  1. CREATE TABLE IF NOT EXISTS `sociedades` (
  2.   `id` INT(11) NOT NULL AUTO_INCREMENT,
  3.   `nombre` VARCHAR(400) COLLATE utf8_spanish_ci DEFAULT NULL,
  4.   PRIMARY KEY (`id`)
  5. ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci AUTO_INCREMENT=3 ;
  6.  
  7. INSERT INTO `sociedades` (`id`, `nombre`) VALUES
  8. (1, 'Real Sociedad de Atorrantes Unidos'),
  9. (2, 'Sociedad Todos por los Chicos');
  10.  
  11. CREATE TABLE IF NOT EXISTS `tablon` (
  12.   `id` VARCHAR(10) COLLATE utf8_spanish_ci NOT NULL,
  13.   `comentario` text COLLATE utf8_spanish_ci NOT NULL
  14. ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci;
  15.  
  16. INSERT INTO `tablon` (`id`, `comentario`) VALUES
  17. ('u2', 'Me gusto mucho la parte en la que el personaje principal saltaba por los techos porque se estaba escapando del marido de la mujer. Saludos.'),
  18. ('s1', 'Muy buena atención post venta. Muy recomendable. Esperamos en el futuro seguir haciendo negocios con su compañia. ');
  19.  
  20. CREATE TABLE IF NOT EXISTS `usuarios` (
  21.   `id` INT(11) NOT NULL AUTO_INCREMENT,
  22.   `nombre` VARCHAR(400) COLLATE utf8_spanish_ci DEFAULT NULL,
  23.   PRIMARY KEY (`id`)
  24. ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COLLATE=utf8_spanish_ci AUTO_INCREMENT=3 ;
  25.  
  26. INSERT INTO `usuarios` (`id`, `nombre`) VALUES
  27. (1, 'Mario Gomes'),
  28. (2, 'Raul Valdez');

Y con esta consulta se puede ver los datos como querias:
Código SQL:
Ver original
  1. SELECT t2.nombre, tablon.comentario FROM tablon
  2. JOIN
  3.    (SELECT concat('u',id) AS idx, nombre FROM usuarios
  4.     UNION
  5.     SELECT concat('s',id), nombre FROM sociedades) AS t2
  6. ON
  7.     tablon.id = t2.idx

Bueno es una idea. Espero q te sea de ayuda. Saludos.