MySql consulta anidada

  • Tengo que consultar 4 tablas de una base de datos en mysql
  • De 3 tablas necesito sacar toda la información con un where
  • De la cuarta solamente tomar el último registro que se ingresó en la columna.

Tengo el siguiente código

SELECT convenio.nit_Fuente, fuentes.nom_Fuente, convenio.nit_asociado, asociados.Nom_asociado, asociados.Apell_asociado
FROM `convenio` 
LEFT JOIN `fuentes` ON (convenio.nit_Fuente = fuentes.nit_Fuente)
LEFT JOIN `asociados` ON (convenio.nit_asociado = asociados.nit_asociado)
LEFT JOIN (SELECT recibo.num_recibo, MAX(recibo.num_recibo
            FROM recibo                             )
WHERE convenio.nit_asociado = '101244561'
-2
задан 12.08.2016, 22:30
2 ответа

протестируй это, чтобы видеть

SELECT convenio.nit_Fuente,
       fuentes.nom_Fuente,
       convenio.nit_asociado,
       asociados.Nom_asociado,
       asociados.Apell_asociado,
       recibo.num_recibo
  FROM `convenio`,
       `fuentes`,
       `asociados`,
       (SELECT recibo.num_recibo,
               MAX(recibo.num_recibo)
          FROM recibo
       )
 WHERE convenio.nit_Fuente   = fuentes.nit_Fuente
   AND convenio.nit_asociado = asociados.nit_asociado
   AND convenio.nit_asociado = '101244561'
1
ответ дан 24.11.2019, 13:40
  • 1
    меня не бросает ошибка показывая, что у Каждой производной таблицы должны быть Ваши собственные иначе –  Jeferson Martinez 12.08.2016, 20:18
  • 2
    это попробовал SELECT в nit_Fuente, b.nom_Fuente, в nit_asociado, c. Nom_asociado, c. Apell_asociado, r.num_recibo FROM соглашение в, шрифты b, компаньоны c, (SELECT оно пересчитывать num_recibo, MAX оно (пересчитывать num_recibo) FROM я получаю r) WHERE в nit_Fuente = b.nit_Fuente AND в nit_asociado = b.nit_asociado AND в nit_asociado = и #39; 101244561 и # 39; –  Jeferson Martinez 12.08.2016, 20:31

формы, В которой он это решает, было

    SELECT 
    (SELECT MAX(recibo.num_recibo) 
    FROM recibo ) as NumRecibo, Con.nit_Fuente, Fue.nom_Fuente, Con.nit_asociado, Aso.Nom_asociado, Aso.Apell_asociado 
    FROM convenio Con 
    LEFT JOIN fuentes Fue ON (Con.nit_Fuente = Fue.nit_Fuente) 
    LEFT JOIN asociados ASO ON (Con.nit_asociado = Aso.nit_asociado)
 where Con.nit_asociado = '101244561'
0
ответ дан 24.11.2019, 13:40

Теги

Похожие вопросы