Donar $20 Donar $50 Donar $100 Donar mensualmente
 


Enviar respuesta 
 
Calificación:
  • 0 votos - 0 Media
  • 1
  • 2
  • 3
  • 4
  • 5
Buscar en el tema
[DUDA][SQL] Ayuda para hacer una query
Autor Mensaje
AGUSTIN27 Sin conexión
Secretario de la SAE
INGENIEROOO :)
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 634
Agradecimientos dados: 21
Agradecimientos: 103 en 23 posts
Registro en: Feb 2010
Mensaje: #1
[DUDA][SQL] Ayuda para hacer una query Dudas y recomendaciones Gestión de Datos
Buenas gente, como andan? recurro a ustedes para que me ayuden con una query que no me sale.

Tengo una tabla que se llama 'envios' y otra 'envios_novedades' yo quiero traerme de cada envío la primera novedad.

Es decir:
Tabla 'envios':
ID
1
2
3
4

Tabla 'envios_novedades'
ID_ENVIO | FECHA
1 | '03-02-2017'
1 | '05-02-2017'
3 | '06-02-2017'

Al hacer el select con el left join quiero que me quede
ID | FECHA
1 | '03-02-2017'
2 | null
3 | '06-02-2017'
4 | null

se me está planteando la dificultad en ir a buscar el la fecha mínima en el left join.

Gracias de antemano y saludos!
06-02-2017 17:19
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Martin. Sin conexión
Presidente del CEIT
Enjoy it !
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.353
Agradecimientos dados: 85
Agradecimientos: 241 en 125 posts
Registro en: Oct 2011
Mensaje: #2
RE: [DUDA][SQL] Ayuda para hacer una query
Creo que haciendo lo siguiente es suficiente:


SELECT E.ID, MIN(FECHA) PrimerNovedad FROM ENVIOS E
LEFT JOIN ENVIOS_NOVEDADES EN
ON E.ID = EN.ID_ENVIO
GROUP BY E.ID



Fijate si funciona.

[Imagen: jQJfyBGh9SOmZ.png]
06-02-2017 17:24
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
[-] Martin. recibio 1 Gracias por este post
AGUSTIN27 (07-02-2017)
rod77 Sin conexión
Presidente del CEIT
:o
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.079
Agradecimientos dados: 131
Agradecimientos: 399 en 176 posts
Registro en: Mar 2011
Mensaje: #3
RE: [DUDA][SQL] Ayuda para hacer una query
select a.id, b.fecha
from envios a
left join envios_novedades b
on a.id = b.id_envio
and b.fecha = (select min(fecha) from envios_novedades c where c.id_envio=a.id)
order by a.id
06-02-2017 17:26
Envíale un email Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
AGUSTIN27 Sin conexión
Secretario de la SAE
INGENIEROOO :)
******

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 634
Agradecimientos dados: 21
Agradecimientos: 103 en 23 posts
Registro en: Feb 2010
Mensaje: #4
RE: [DUDA][SQL] Ayuda para hacer una query
La respuesta correcta era la anterior. En esta lo que está mal es cuando haces: wherec.id_envio=a.id
porque la tabla a viene desde otro from, no podes compararla ahí.

Gracias a ambos!

(06-02-2017 17:26)rod77 escribió:  select a.id, b.fecha
from envios a
left join envios_novedades b
on a.id = b.id_envio
and b.fecha = (select min(fecha) from envios_novedades c where c.id_envio=a.id)
order by a.id
07-02-2017 09:33
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Martin. Sin conexión
Presidente del CEIT
Enjoy it !
********

Ing. en Sistemas
Facultad Regional Buenos Aires

Mensajes: 1.353
Agradecimientos dados: 85
Agradecimientos: 241 en 125 posts
Registro en: Oct 2011
Mensaje: #5
RE: [DUDA][SQL] Ayuda para hacer una query
Excelente.
Cualquier otra duda consultanos!.

[Imagen: jQJfyBGh9SOmZ.png]
07-02-2017 10:01
Encuentra todos sus mensajes Agregar agradecimiento Cita este mensaje en tu respuesta
Buscar en el tema
Enviar respuesta 




Usuario(s) navegando en este tema: 1 invitado(s)



    This forum uses Lukasz Tkacz MyBB addons.