none
Consultar tabla con años RRS feed

  • Pregunta

  • Buenas Tardes amigos

    Tengo la siguiente cuestión ....   tengo una tabla llamada pedidolist que es (la cabecera)

    Luego tengo otra tabla llamada pedidomov_2018 (que es el detalle)   y otra tabla que se llama pedidomov_2017(que se guarda los detalles) 

    Ahora si yo conulto por fecha de pedido (que esta en la cabecera) si pongo la fecha de julio del 2017 por ejemplo y apunto a la de pedidomov_2018 no muestra nada por que los datos estan en el del 2017 bien

    Ahora como puedo hacer un scrip que lo que haga es comprar los años por ejemplo 

    Si consulto del 01/11/2017 hasta el 12/02/2018

    Y que me muestre los datos.

    Yo estaba pensando mostrar por año filtrando pero no me vale por que tengo datos hasta el 31 de enero del 2018 en la tabla de pedidomov_2017 

    Ayudita urgente amigos

    saludos


    ruben

    lunes, 12 de febrero de 2018 16:31

Respuestas

  • hola Ruben 

    Si tienes Un encabezado con una fecha y un detalle con otra fecha debe ser prevalente la fecha de encabezado, si quieres obtener el encabezado pero por fecha de detalle lo mas seguro que debe ser la misma que la del encabezado

    select * from
    pedidomov as pm INNER JOIN pedidolistas pl On pm.Idpedidomov = pl.Idpedidomov 
    WHERE pm.FechaPeriodo BETWEEN 
    '01/11/2017' AND '12/02/2018' --ojo verificar como tienes configurado las fechas en tu sql SErver
    Creo que ESTO es lo que pretendes hacer??

    lunes, 12 de febrero de 2018 16:42

Todas las respuestas

  • hola Ruben 

    Si tienes Un encabezado con una fecha y un detalle con otra fecha debe ser prevalente la fecha de encabezado, si quieres obtener el encabezado pero por fecha de detalle lo mas seguro que debe ser la misma que la del encabezado

    select * from
    pedidomov as pm INNER JOIN pedidolistas pl On pm.Idpedidomov = pl.Idpedidomov 
    WHERE pm.FechaPeriodo BETWEEN 
    '01/11/2017' AND '12/02/2018' --ojo verificar como tienes configurado las fechas en tu sql SErver
    Creo que ESTO es lo que pretendes hacer??

    lunes, 12 de febrero de 2018 16:42
  • hola Greg no en el detalle no tengo fecha 

    solo en el encabezado 

    mira algo asi

    select *
    from pedidolist 
       left join txgl.pedidomov_2017 pma on pma.pedidokey=p.pedidokey
       left join txgl.pedidomov pm on pm.pedidokey=p.pedidokey
    where p.fechaenvio >= '20180129' and p.fechaenvio <= '20180130'
    

    ves pero no me vale me da error ademas como comentaba tengo los mismos datos en 2017 y en el de normal

    saludos


    ruben

    lunes, 12 de febrero de 2018 17:39
  • Hola Ruben

    esta solución es la que ya te había propuesto, qué tal si creas dos vistas, una en donde almacenes 2017 y otra donde almacenes 2018 y luego utilizas el union all para unirlas como te había respondido en el hilo anterior


    Brayan De la Cruz
    Lima - Perú

    lunes, 12 de febrero de 2018 17:46
  • @Pablo Rubio lo que pasa es que no me funciona asi por eso no lo marco como respuesta lo siento 

    Por que piensa en las dos tablas tengo los mismos datos 

    entonces no se como controlar para que no sume

    saludos


    ruben

    lunes, 12 de febrero de 2018 18:05
  • bueno creo que yo no le pondría los left join

    revisa este link sql_join_left y revisa la logica que es lo que necesitas porque si quieres fecha de envio 20180129 al 20180130 debes incluir horas y minutos a la consulta

    porque puede que el sql lo interprete asi '20180129 11:59:59' y '20180130 00:00:01'  lo cual no va encontrar nada

    lunes, 12 de febrero de 2018 18:18