engineerHopf Posted July 10, 2014 Share Posted July 10, 2014 Buenas a todos!, alguien me puede ayudar en un codigo mysql? Select ps_orders.reference, concat(ps_customer.firstname,' ', ps_customer.lastname) as Nombre, ps_address.phone, ps_address.phone_mobile from ps_orders inner join ps_customer on ps_customer.id_customer = ps_orders.id_customer inner join ps_address on ps_address.id_address = ps_orders.id_address_delivery; me aparece el siguiente mensaje: El atributo "id_customerinner" no existe en la tabla "ps_orders". alguien sabe cual podria ser el motivo? segun veo esta bien el codigo, pero no se porque me aparece eso Link to comment Share on other sites More sharing options...
joseantgv Posted July 10, 2014 Share Posted July 10, 2014 Es posible que esa query la hayas copiado de algún sitio en vez de escribirla? Parece que hay algún carácter raro. Escríbela y mira si funciona. Link to comment Share on other sites More sharing options...
JuDrYa Posted July 10, 2014 Share Posted July 10, 2014 (edited) Te falta un punto y coma despues de "ps_orders.id_customer". Quedaria asi... Select ps_orders.reference, concat(ps_customer.firstname,' ', ps_customer.lastname) as Nombre, ps_address.phone, ps_address.phone_mobile from ps_orders inner join ps_customer on ps_customer.id_customer = ps_orders.id_customer; inner join ps_address on ps_address.id_address = ps_orders.id_address_delivery; Pruebalo y comenta como te fue. Edited July 10, 2014 by JuDrYa (see edit history) 1 Link to comment Share on other sites More sharing options...
engineerHopf Posted July 10, 2014 Author Share Posted July 10, 2014 Es posible que esa query la hayas copiado de algún sitio en vez de escribirla? Parece que hay algún carácter raro. Escríbela y mira si funciona. No la copie, la hice yo, Te falta un punto y coma despues de "ps_orders.id_customer". Quedaria asi... Select ps_orders.reference, concat(ps_customer.firstname,' ', ps_customer.lastname) as Nombre, ps_address.phone, ps_address.phone_mobile from ps_orders inner join ps_customer on ps_customer.id_customer = ps_orders.id_customer; inner join ps_address on ps_address.id_address = ps_orders.id_address_delivery; Pruebalo y comenta como te fue. vale, muchas gracias, ahora mismo la pruebo! Link to comment Share on other sites More sharing options...
engineerHopf Posted July 10, 2014 Author Share Posted July 10, 2014 Te falta un punto y coma despues de "ps_orders.id_customer". Quedaria asi... Select ps_orders.reference, concat(ps_customer.firstname,' ', ps_customer.lastname) as Nombre, ps_address.phone, ps_address.phone_mobile from ps_orders inner join ps_customer on ps_customer.id_customer = ps_orders.id_customer; inner join ps_address on ps_address.id_address = ps_orders.id_address_delivery; Pruebalo y comenta como te fue. Aparece el mismo error. Link to comment Share on other sites More sharing options...
joseantgv Posted July 11, 2014 Share Posted July 11, 2014 Te falta un punto y coma despues de "ps_orders.id_customer". Quedaria asi... Select ps_orders.reference, concat(ps_customer.firstname,' ', ps_customer.lastname) as Nombre, ps_address.phone, ps_address.phone_mobile from ps_orders inner join ps_customer on ps_customer.id_customer = ps_orders.id_customer; inner join ps_address on ps_address.id_address = ps_orders.id_address_delivery; Pruebalo y comenta como te fue. No. Aparece el mismo error. Prueba de poner otro salto de línea entre "ps_customer.id_customer = ps_orders.id_customer" y "inner join ps_address on". PD: A mi me llega un correo de aviso cuando se crea un nuevo tema en este foro y esas palabras me aparecen juntas, por eso creo que hay algún carácter para salto de línea que no es el correcto y te dije si habías copiado la query. 1 Link to comment Share on other sites More sharing options...
JuDrYa Posted July 11, 2014 Share Posted July 11, 2014 Select ps_orders.reference, concat(ps_customer.firstname,' ', ps_customer.lastname) as Nombre, ps_address.phone, ps_address.phone_mobile from ps_ordersinner join ps_customer on ps_customer.id_customer = ps_orders.id_customerinner join ps_address on ps_address.id_address = ps_orders.id_address_delivery 1 Link to comment Share on other sites More sharing options...
engineerHopf Posted July 11, 2014 Author Share Posted July 11, 2014 No. Prueba de poner otro salto de línea entre "ps_customer.id_customer = ps_orders.id_customer" y "inner join ps_address on". PD: A mi me llega un correo de aviso cuando se crea un nuevo tema en este foro y esas palabras me aparecen juntas, por eso creo que hay algún carácter para salto de línea que no es el correcto y te dije si habías copiado la query. Select ps_orders.reference, concat(ps_customer.firstname,' ', ps_customer.lastname) as Nombre, ps_address.phone, ps_address.phone_mobile from ps_orders inner join ps_customer on ps_customer.id_customer = ps_orders.id_customer inner join ps_address on ps_address.id_address = ps_orders.id_address_delivery Mismo problema... Link to comment Share on other sites More sharing options...
JuDrYa Posted July 11, 2014 Share Posted July 11, 2014 (edited) Haber, dime que quieres listar con la consulta. Estoy muy cortito en esto, pero intentare ayudar algo. Edited July 11, 2014 by JuDrYa (see edit history) 1 Link to comment Share on other sites More sharing options...
engineerHopf Posted July 11, 2014 Author Share Posted July 11, 2014 Haber, dime que quieres listar con la consulta. Estoy muy cortito en esto, pero intentare ayudar algo. necesito crear un listado general de pedidos, o invoice, el cual necesito los siguientes datos: refencia, nombre+apellido, tel, movil, cod postal, direccion, direccion adicional, dni/nro de empresa, nota adicional, medidas:largo+ancho+alto, peso, normbreproducto, marca, precio, cantidad. esa lista mi cliente debe enviar a una compañia de envios, y la compañia de envio le genera un codigo de barras, que le funciona para pasar sin problemas en aduanas. Link to comment Share on other sites More sharing options...
ventura Posted July 11, 2014 Share Posted July 11, 2014 Haz la misma consulta con el join global, sin left ni inner Select ps_orders.reference, concat(ps_customer.firstname,' ', ps_customer.lastname) as Nombre, ps_address.phone, ps_address.phone_mobile from ps_orders join ps_customer on ps_customer.id_customer = ps_orders.id_customer join ps_address on ps_address.id_address = ps_orders.id_address_delivery 2 Link to comment Share on other sites More sharing options...
engineerHopf Posted July 11, 2014 Author Share Posted July 11, 2014 Haz la misma consulta con el join global, sin left ni inner Select ps_orders.reference, concat(ps_customer.firstname,' ', ps_customer.lastname) as Nombre, ps_address.phone, ps_address.phone_mobile from ps_orders join ps_customer on ps_customer.id_customer = ps_orders.id_customer join ps_address on ps_address.id_address = ps_orders.id_address_delivery Funciona, el problema era el inner! jaja, de todas formas muchas gracias a todos! El sql aun no cumple con lo que necesito, pero es una excelente ayuda, con esto ya podré solucionarlo, muchas gracias! Link to comment Share on other sites More sharing options...
joseantgv Posted July 11, 2014 Share Posted July 11, 2014 Funciona, el problema era el inner! jaja, de todas formas muchas gracias a todos! El sql aun no cumple con lo que necesito, pero es una excelente ayuda, con esto ya podré solucionarlo, muchas gracias! El problema no era el inner: Link to comment Share on other sites More sharing options...
engineerHopf Posted July 11, 2014 Author Share Posted July 11, 2014 (edited) El problema no era el inner: pero porque funciona al quitarle el inner? xD Yo manejo bastante sql, antes programaba mucho en sql server 2008. Por eso me parecia raro que no me funcionara el inner join. Pero con el ejemplo de ventura, ahi si me funciono, solo por eso dije que el problema era el inner. Edited July 11, 2014 by engineerHopf (see edit history) Link to comment Share on other sites More sharing options...
joseantgv Posted July 11, 2014 Share Posted July 11, 2014 Tienes que tener algún problema con los caracteres, fíjate que el error que te aparece es que es junta customer con inner: El atributo "id_customerinner" no existe en la tabla "ps_orders". 1 Link to comment Share on other sites More sharing options...
engineerHopf Posted July 11, 2014 Author Share Posted July 11, 2014 Tienes que tener algún problema con los caracteres, fíjate que el error que te aparece es que es junta customer con inner: El atributo "id_customerinner" no existe en la tabla "ps_orders". Ya, entiendo eso, pero porque funciona sin el inner? Link to comment Share on other sites More sharing options...
joseantgv Posted July 11, 2014 Share Posted July 11, 2014 (edited) Ya, entiendo eso, pero porque funciona sin el inner? Ahora que tienes funcionando la query sin el inner, vuélvelo a poner. Ponle un espacio delante. Edited July 11, 2014 by joseantgv (see edit history) 1 Link to comment Share on other sites More sharing options...
JuDrYa Posted July 11, 2014 Share Posted July 11, 2014 (edited) No entiendo de esto pero observando los códigos, la unica diferencia que le veo con lo que ha puesto "ventura", aparte de quitar el inner, es el punto y coma del final del todo...¿puede ser eso? En el primer código que a puesto "engineerHopf", primer post, pone... Select ps_orders.reference, concat(ps_customer.firstname,' ', ps_customer.lastname) as Nombre, ps_address.phone, ps_address.phone_mobile from ps_orders inner join ps_customer on ps_customer.id_customer = ps_orders.id_customer inner join ps_address on ps_address.id_address = ps_orders.id_address_delivery; Y la prueba que ha puesto "joseantgv", de que funciona... Select ps_orders.reference, concat(ps_customer.firstname,' ', ps_customer.lastname) as Nombre, ps_address.phone, ps_address.phone_mobile from ps_orders inner join ps_customer on ps_customer.id_customer = ps_orders.id_customer inner join ps_address on ps_address.id_address = ps_orders.id_address_delivery Edited July 11, 2014 by JuDrYa (see edit history) 1 Link to comment Share on other sites More sharing options...
Recommended Posts