Saltar al contenido principal

 none
Consulta" Algun ejemplo para sacar datos por semana y semana actual por mes y mes actual en SQL? RRS feed

  • Pregunta

  • Asi sin mas lo que quiero saber es si se puede ralizar una consultas de  datos por semana  y semana actual, de los mes pasados y el mes actual.
    viernes, 22 de noviembre de 2019 23:23

Respuestas

  • Sí, es posible.
    Pero postea detalles sobre las tablas, columnas, la disposición de los resultados, etc.

     


    José Diz     Belo Horizonte, MG - Brasil     [query performance tuning: Porto SQL]


    Este conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.

    viernes, 22 de noviembre de 2019 23:46
  • Hola BlackCode23:

    Eso básicamente es algo como esto:

    SET LANGUAGE 'spanish'
    SELECT
    DATENAME(MONTH,FECHA),
    DATEPART(WEEK,FECHA),
    , UAP as UAP
    , SUM(DUAP) AS TOTAL 
    FROM[PPMS VW] 
    WHERE YEAR(FECHA) = 2019 
    GROUP BY UAP, DATENAME(MONTH, FECHA),DATEPART(WEEK,FECHA);

    Pero las preguntas son dos. 

    ¿Como quieres la salida?, porque en función de eso, se realiza la query de un modo o de otro. 

    ¿Que significa de los meses pasados y actual?

    Supongo que dos columnas, una todos los anteriores, y otra el actual, y lo mismo para las semanas, o ......

    lunes, 25 de noviembre de 2019 16:20
  • Esta seria la consulta que realizo pero por mes.

    SELECT

    CASE WHEN DATEPART(MONTH, FECHA) = 1 THEN 'ENERO'

    WHEN DATEPART(MONTH, FECHA) = 2 THEN 'FEBRERO'

    WHEN DATEPART(MONTH, FECHA) = 3 THEN 'MARZO'

    WHEN DATEPART(MONTH, FECHA) = 4 THEN 'ABRIL'

    WHEN DATEPART(MONTH, FECHA) = 5 THEN 'MAYO'

    WHEN DATEPART(MONTH, FECHA) = 6 THEN 'JUNIO'

    WHEN DATEPART(MONTH, FECHA) = 7 THEN 'JULIO'  

    WHEN DATEPART(MONTH, FECHA) = 8 THEN 'AGOSTO'

    WHEN DATEPART(MONTH, FECHA) = 9 THEN 'SEPTIEMBRE'

    WHEN DATEPART(MONTH, FECHA) = 10 THEN 'OCTUBRE'

    WHEN DATEPART(MONTH, FECHA) = 11 THEN 'NOVIEMBRE'

    WHEN DATEPART(MONTH, FECHA) = 12 THEN 'DICIEMBRE' END AS MES,

    UAP as UAP, SUM(DUAP) AS TOTAL

    FROM[PPMS VW] WHERE YEAR(FECHA) = 2019 GROUP BY UAP, DATEPART(MONTH, FECHA)



    lunes, 25 de noviembre de 2019 14:24
  • Si pero los totales, donde van?, en la misma fila, o en distintas filas.

    Y la semana anterior, que es?

    Ej. hoy es la semana 48 del año.

    Qué necesitas, lo de la semana 47. O en realidad, hoy es lunes, y si ponemos incluido hoy, menos 7 dias, es una semana y la anteriore es de -7 a -14????

    Resumo, ¿Cómo vas a presentar los resultados?

    ¿Qué identifica a la semana en curso?

    lunes, 25 de noviembre de 2019 21:27
  • Hola BlackCode23:

    Dado que las preguntas no las respondes tal cúal se te preguntan, porque no pones un ejemplo en una hoja como si fuera un excel, para que podamos ayudarte.

    miércoles, 27 de noviembre de 2019 20:03

Todas las respuestas

  • Sí, es posible.
    Pero postea detalles sobre las tablas, columnas, la disposición de los resultados, etc.

     


    José Diz     Belo Horizonte, MG - Brasil     [query performance tuning: Porto SQL]


    Este conteúdo é fornecido sem garantias de qualquer tipo, seja expressa ou implícita.

    viernes, 22 de noviembre de 2019 23:46
  • Esta seria la consulta que realizo pero por mes.

    SELECT

    CASE WHEN DATEPART(MONTH, FECHA) = 1 THEN 'ENERO'

    WHEN DATEPART(MONTH, FECHA) = 2 THEN 'FEBRERO'

    WHEN DATEPART(MONTH, FECHA) = 3 THEN 'MARZO'

    WHEN DATEPART(MONTH, FECHA) = 4 THEN 'ABRIL'

    WHEN DATEPART(MONTH, FECHA) = 5 THEN 'MAYO'

    WHEN DATEPART(MONTH, FECHA) = 6 THEN 'JUNIO'

    WHEN DATEPART(MONTH, FECHA) = 7 THEN 'JULIO'  

    WHEN DATEPART(MONTH, FECHA) = 8 THEN 'AGOSTO'

    WHEN DATEPART(MONTH, FECHA) = 9 THEN 'SEPTIEMBRE'

    WHEN DATEPART(MONTH, FECHA) = 10 THEN 'OCTUBRE'

    WHEN DATEPART(MONTH, FECHA) = 11 THEN 'NOVIEMBRE'

    WHEN DATEPART(MONTH, FECHA) = 12 THEN 'DICIEMBRE' END AS MES,

    UAP as UAP, SUM(DUAP) AS TOTAL

    FROM[PPMS VW] WHERE YEAR(FECHA) = 2019 GROUP BY UAP, DATEPART(MONTH, FECHA)



    lunes, 25 de noviembre de 2019 14:24
  • Hola BlackCode23:

    Eso básicamente es algo como esto:

    SET LANGUAGE 'spanish'
    SELECT
    DATENAME(MONTH,FECHA),
    DATEPART(WEEK,FECHA),
    , UAP as UAP
    , SUM(DUAP) AS TOTAL 
    FROM[PPMS VW] 
    WHERE YEAR(FECHA) = 2019 
    GROUP BY UAP, DATENAME(MONTH, FECHA),DATEPART(WEEK,FECHA);

    Pero las preguntas son dos. 

    ¿Como quieres la salida?, porque en función de eso, se realiza la query de un modo o de otro. 

    ¿Que significa de los meses pasados y actual?

    Supongo que dos columnas, una todos los anteriores, y otra el actual, y lo mismo para las semanas, o ......

    lunes, 25 de noviembre de 2019 16:20
  • Quiero sacar las valores totales de las semanas anteriores y en curso de cada UAP 
    lunes, 25 de noviembre de 2019 21:07
  • Si pero los totales, donde van?, en la misma fila, o en distintas filas.

    Y la semana anterior, que es?

    Ej. hoy es la semana 48 del año.

    Qué necesitas, lo de la semana 47. O en realidad, hoy es lunes, y si ponemos incluido hoy, menos 7 dias, es una semana y la anteriore es de -7 a -14????

    Resumo, ¿Cómo vas a presentar los resultados?

    ¿Qué identifica a la semana en curso?

    lunes, 25 de noviembre de 2019 21:27
  • el total iría en la misma fila a la que le corresponde la UAP

    y las semanas anteriores, en total tendrían que haber como 4 filas por semana al mes.

    miércoles, 27 de noviembre de 2019 17:07
  • Hola BlackCode23:

    Dado que las preguntas no las respondes tal cúal se te preguntan, porque no pones un ejemplo en una hoja como si fuera un excel, para que podamos ayudarte.

    miércoles, 27 de noviembre de 2019 20:03