none
consulta multitabla con campos con el mismo nombre RRS feed

  • Pregunta

  • hola esta vez estoy intentando consultar algunos datos de dos tablas diferentes de la siguiente forma.

       select p.cedula, p.nombre, p.apellido, p.telefono, m.cedula, m.nombre, m.apellido  from Persona p
       join OrdenServicio o on o.idcliente = cedula join Mecanico m on o.idmecanico = idmecanico  where o.numeroingreso = '4'

       Persona tiene los siguientes atributos: cedula, nombre, apellido,telefono

      Mecanico tiene los siguientes: cedula nombre y apellido. 

     Como veran cedula nombre y apellido se llaman de la misma forma y estoy intentando acceder con el codigo que acabo de mostrar pero no me arroja ningun dato y si tengo campos registrados, por cierto la tabla maestro es OrdenServicio y hace referencia a persona y mecanico.






    yoel mendoza

    lunes, 17 de abril de 2017 1:37

Respuestas

  • Hola yoel mendoza

    Si tu tabla maestro es Orden Servicio es la que debe predominar, además usa el left join, ya que así no depende de que tengan datos si o si cruzados, si no bastarían con los de OrdenServicio, prueba esta query:

     select	p.cedula, 
    		p.nombre, 
    		p.apellido, 
    		p.telefono, 
    		m.cedula, 
    		m.nombre, 
    		m.apellido  
     from   OrdenServicio o left join Persona p on o.idcliente = cedula 
            left join Mecanico m on o.idmecanico = idmecanico  
     where  o.numeroingreso = '4'
    Saludos


    Si ayudé a resolver tu consulta, no olvides marcar como respuesta y/o votar como útil.


    lunes, 17 de abril de 2017 1:41