none
Consulta de Intervalos de Fecha RRS feed

  • Pregunta

  • Hola soy principiante en SQL , estoy tratando de generar una consulta en los intervalos de dos fechas , Estaba intentando con Between pero solo me regresa datos con registros que tengas información en ciertas Fechas lo que yo busco es que Me devuelva 0 o Null en caso de que el  registro no contenga información 

    Es decir quiero saber si "ProductoA" tiene datos en intervalos de fechas de FechaA hasta FechaB pero quiero que consulte por cada fecha que hay entre FechaA y FechaB y NO que solo me devuelva valores donde si haya registros como normalmente lo hace "Where Between"

    Ojala me pudieran ayudar.
    martes, 3 de marzo de 2020 13:58

Todas las respuestas

  • Buenos días

    Dependiendo de como sea la consulta pero si lo que quieres es cambiar el resultado  puedes probar CAST para cambiar el valor

    Saludos

    martes, 3 de marzo de 2020 14:26
  • Hola Israel Gracias por contestar, Mira esta es la consulta 

    Select DISTINCT(mtxnhist.PN),
    inv.LT,inv.MIN,mtxnhist.QTY,mtxnhist.TXNDATE
    from mtxnhist 
    LEFT JOIN inv on mtxnhist.PN= inv.PN
    where TXNTYPE in (300,400) and TXNDATE>= '2019-12-30' and TXNDATE <= '2020-03-03'


    martes, 3 de marzo de 2020 14:40
  • Buenas tardes

    Al incluir la fecha en la clausula where te limitas o los resultados que estén dentro de las fechas

    Prueba la consulta desde la tabla inv y haz el join de la tabla mtxnhist. Prueba esto

    Select DISTINCT(mtxnhist.PN),
    inv.LT ,inv.MIN,mtxnhist.QTY,mtxnhist.TXNDATE
    from inv
    LEFT JOIN mtxnhist ON mtxnhist.PN= inv.PN AND TXNDATE>= '2019-12-30' and TXNDATE <= '2020-03-03'
    WHERE TXNTYPE in (300,400)
    Saludos

    martes, 3 de marzo de 2020 15:46
  • Deleted
    miércoles, 4 de marzo de 2020 11:48
  • Hola que tal Jose, TXNDATE & TXNTYPE concolumnas de la Tabla MTXNHIST. Me inetersa La informacion de la columna QTY de la misma tabla.

    Te dejo un enlace en StackOverflow donde planteo la pregunta con algunas imagines y resultados que  he obtenido.

    https://es.stackoverflow.com/questions/334069/consulta-de-intervalos-de-fecha-sql

    miércoles, 4 de marzo de 2020 13:19
  • intentare solucionarlo:

    DECLARE @fecini date, @fecfin date
    SELECT @fecini= '2009/01/01', @fecfin= '2009/01/31';
    WITH secuencia(fecha) AS
    ( SELECT @fecini as Fecha
      UNION ALL                                      
      SELECT DATEADD(DAY, 1, fecha)  FROM secuencia WHERE fecha < @fecfin)
    select  isnull(b.codpro,0) as codpro, isnull(b.descrip,'') as descripcion, isnull(b.valor,0) as valor, s.fecha

    from  secuencia as s left join   productoA as b on b.fecha = a.fecha

    ---espero que te sirva





    • Editado Hacerdan martes, 10 de marzo de 2020 19:58 correccion
    martes, 10 de marzo de 2020 19:56