none
Suma de columnas de datagridview en vb,c RRS feed

  • Pregunta

  • Buenos dias:

    tengo asi mi consulta...

    SELECT usuario,CASE WHEN (CONVERT(varchar(10), entrada, 103) = '01/01/2015') THEN NULL ELSE CONVERT(varchar(10), entrada, 108) end ENTRADA,CASE WHEN (CONVERT(varchar(10), comida, 103) = '01/01/2015') THEN NULL ELSE CONVERT(varchar(10), comida, 108)end COMIDA,CASE WHEN (CONVERT(varchar(10), regreso, 103) = '01/01/2015') THEN NULL ELSE CONVERT(varchar(10), regreso, 108)end REGRESO,CASE WHEN (CONVERT(varchar(10), salida, 103) = '01/01/2015') THEN NULL ELSE CONVERT(varchar(10), salida, 108) end SALIDA , (aqui poner la suma) as totales from tabla

    Como le haria para sumar las horas trascurridas desde la entrada, comida y regreso????espero su ayuda, gracias!

                      entrada     comida       regreso        salida         Total Horas

    pedro          9:20AM     2:12PM      4:00PM     7:16PM             8:08
     luis            8:13AM     12:08PM    2:05PM     6:33PM              8:23

    • Cambiado Enrique M. Montejo sábado, 15 de agosto de 2015 18:27 Pregunta relacionada con el acceso a datos.
    jueves, 30 de julio de 2015 15:35

Todas las respuestas

  • Saludos:

    Intenta esto:

    SELECT usuario,
    	CASE WHEN (CONVERT(varchar(10), entrada, 103) = '01/01/2015') THEN NULL 
    	ELSE CONVERT(varchar(10), entrada, 108) end ENTRADA,
    	CASE WHEN (CONVERT(varchar(10), comida, 103) = '01/01/2015') THEN NULL 
    	ELSE CONVERT(varchar(10), comida, 108)end COMIDA,
    	CASE WHEN (CONVERT(varchar(10), regreso, 103) = '01/01/2015') THEN NULL 
    	ELSE CONVERT(varchar(10), regreso, 108)end REGRESO,
    	CASE WHEN (CONVERT(varchar(10), salida, 103) = '01/01/2015') THEN NULL 
    	ELSE CONVERT(varchar(10), salida, 108) end SALIDA, 
    	((COMIDA-ENTRADA)+(SALIDA-REGRESO) as totales 
    FROM tabla
    

    Solo una apreciacion mas: lo que yo haria es crear variables que hicieran los calculos individuales para mañana y tarde y despues sumaria los dos valores.

    Recuerda que VB .Net te permite manejar objetos mas eficientemente que hacer todo el query en la BD.

    Espero ayude.

    JOSE LUIS


    Dios NO los llamo LAS DIEZ RECOMENDACIONES

    jueves, 30 de julio de 2015 16:36
  • select usuario, CASE WHEN (CONVERT(varchar(10), entrada, 103) = '01/01/2015') THEN NULL ELSE CONVERT(varchar(10), entrada, 108) END entrada, CASE WHEN (CONVERT(varchar(10), comida, 103) = '01/01/2015') THEN NULL ELSE CONVERT(varchar(10), comida, 108) END  comida,  CASE WHEN (CONVERT(varchar(10), regreso, 103) = '01/01/2015') THEN NULL ELSE CONVERT(varchar(10), regreso, 108) END regreso,  CASE WHEN (CONVERT(varchar(10), salida, 103) = '01/01/2015') THEN NULL ELSE CONVERT(varchar(10), salida, 108) end  salida, (comida - entrada)  + (salida - regreso)  total FROM tabla

    me funciona en bien pero seria para que no me aparezaca el as totales as 02/07/2015 08:42 p.m. solo aparezca las horas 8:42 p.m.  y  otra cosa la suma se podria usar o reflejar el resultado en una columna de la misma tabla que se llama total? como seria?...algo asi  (comida - entrada)  + (salida - regreso) total o como?

    gracias!

    quito los as porque luego hay conflicto porque lo tengo que exportar a excel lo que tengo en el grid

    jueves, 30 de julio de 2015 21:18