Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

error en consulta mysql

Estas en el tema de error en consulta mysql en el foro de Mysql en Foros del Web. buenas tenia una consulta que funcionaba bien hasta que agregue @import url("http://static.forosdelweb.com/clientscript/vbulletin_css/geshi.css"); Código MySQL: Ver original LEFT OUTER JOIN `compromiso _ rc` ON ( `compromiso ...
  #1 (permalink)  
Antiguo 18/09/2014, 10:23
 
Fecha de Ingreso: febrero-2011
Mensajes: 167
Antigüedad: 13 años, 2 meses
Puntos: 9
error en consulta mysql

buenas tenia una consulta que funcionaba bien
hasta que agregue
Código MySQL:
Ver original
  1. LEFT OUTER JOIN `compromiso_rc` ON (`compromiso_rc`.`idrc` = `rc`.`idrc`)
  2.                       AND (`compromiso_rc`.`idmodulo` = `rc`.`idmodulo`)
[/B]

y ahora me dice el error Not unique table/alias: 'compromiso_rc'
noe entiendo que se refiere o como poder solucionarlo algun alcanse? muchas gracias

Código MySQL:
Ver original
  1.                       `compromiso`.`compromiso`,
  2.                        if(year(curdate())=year(compromiso.fecha),DATE_FORMAT(compromiso.fecha,'%W, %d de %M'),DATE_FORMAT(compromiso.fecha,'%d/%m/%y')) AS fecha,                      
  3.                       DATE_FORMAT(`compromiso`.`fecha`,'%d/%m/%Y') AS fecha_fin,
  4.                       `compromiso`.`activo`,
  5.                      
  6.                       `persona1`.`idpersona`,
  7.                       `persona1`.`idmodulo`,
  8.                       `persona1`.`apellido_p` as sh_apellido_p,
  9.                       `persona1`.`apellido_m` as sh_apellido_m,
  10.                       `persona1`.`nombre` as sh_nombre,
  11.                       `persona1`.`idpersona_tipo` as sh_idpersona_tipo,
  12.                       `persona1`.`imagen` as sh_imagen,
  13.                       `persona`.`idpersona`,
  14.                       `persona`.`idmodulo`,
  15.                       `persona`.`apellido_p` as rc_apellido_p,
  16.                       `persona`.`apellido_m` as rc_apellido_m,
  17.                       `persona`.`nombre` as rc_nombre,
  18.                       `persona`.`activo`,
  19.                       `persona1`.`activo`,
  20.                       `compromiso`.`idcompromiso`,
  21.                       `compromiso`.`idmodulo_compromiso`,
  22.                       `compromiso`.`idusu_c`,
  23.                       `compromiso`.`idmodulo_c`,
  24.                       `compromiso_rc`.`idrc`,
  25.                       `compromiso_rc`.`idmodulo` AS rc_idmodulo,
  26.                       `compromiso_sh`.`idmodulo` AS sh_idmodulo,
  27.                       `compromiso_sh`.`idsh`,
  28.                       `compromiso`.`idcompromiso_prioridad`,
  29.                       `compromiso`.`idcompromiso_estado`,
  30.                       `compromiso`.`comentario`,
  31.                        compromiso_rc.idcompromiso_rc,
  32.                        compromiso_sh.idcompromiso_sh,
  33.                        `compromiso_archivo`.idcompromiso_archivo,
  34.                         `compromiso_archivo`.idmodulo_compromiso_archivo,
  35.                         `compromiso_archivo`.archivo,
  36.                         `compromiso_archivo`.activo as archivo_activo,
  37.                         compromiso.idinteraccion,
  38.                        compromiso.idmodulo_interaccion,
  39.                        compromiso_rc.idrc,
  40.                        compromiso_rc.idmodulo                      
  41.                     FROM
  42.                       `compromiso`
  43.                       INNER JOIN `compromiso_rc` ON (`compromiso`.`idmodulo_compromiso` = `compromiso_rc`.`idmodulo_compromiso`)
  44.                       AND (`compromiso`.`idcompromiso` = `compromiso_rc`.`idcompromiso`)
  45.                       INNER JOIN `compromiso_sh` ON (`compromiso`.`idcompromiso` = `compromiso_sh`.`idcompromiso`)
  46.                       AND (`compromiso`.`idmodulo_compromiso` = `compromiso_sh`.`idmodulo_compromiso`)
  47.                       INNER JOIN `persona` ON (`compromiso_rc`.`idrc` = `persona`.`idpersona`)
  48.                       AND (`compromiso_rc`.`idmodulo` = `persona`.`idmodulo`)
  49.                       INNER JOIN `persona` `persona1` ON (`compromiso_sh`.`idsh` = `persona1`.`idpersona`)
  50.                       AND (`compromiso_sh`.`idmodulo` = `persona1`.`idmodulo`)
  51.                       LEFT OUTER JOIN `compromiso_archivo` ON (`compromiso_archivo`.`idcompromiso` = `compromiso`.`idcompromiso`)
  52.                       AND (`compromiso_archivo`.`idmodulo_compromiso` = `compromiso`.`idmodulo_compromiso`)                    
  53.                      
  54.                       LEFT OUTER JOIN `compromiso_rc` ON (`compromiso_rc`.`idrc` = `rc`.`idrc`)
  55.                       AND (`compromiso_rc`.`idmodulo` = `rc`.`idmodulo`)
  #2 (permalink)  
Antiguo 18/09/2014, 10:30
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: error en consulta mysql

Estás invocando más de una vez la misma tabla en el FROM, pero sin usar alias. de hecho lo estás haciendo con más de una tabla.
Eso está mal. Si llamas dos veces una misma tabla con diferenets INNER JOIN en la misma consulta, debes usar alias para al menos una de ellas.

Francamente, si la query ya estaba así, no debería haberte funcionado jamás. En ningun DBMS
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: join, select
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 00:30.