Retroceder   Foros del Web > Programación para sitios web > Bases de Datos > SQL Server

Respuesta
 
Herramientas Desplegado
Antiguo 29-abr-2008, 17:51   #1 (permalink)
horizonte ha deshabilitado el karma
 
Avatar de horizonte
 
Fecha de Ingreso: octubre-2005
Ubicación: A 50cm del Monitor(el angulo depende del estado de animo)
Mensajes: 136
Pregunta Se resuelve usando Group by y sum()?

Hola Gente:

Tengo una vista(vw_Resumen), en la que debo sumar(SUM()) los valores de los campos numericos agrupados(group by) por el campo llamado "tema", teniendo en cuenta que "tema" y "tema_01" son el mismo tema por ende tengo que evitar que me discrimine el "_01" para que sume ambas en el mismo grupo.

Lo primero que se me ocurrio fue actualizar(update) la vista, quitandole el "_01" y luego en otra consulta la agrupo(group by), pero el Update no es aplicable a las vistas(solo es aplicable a tablas). De esta forma no me queda otra que hacer la suma(SUM()) en la misma vista pero hasta ahora no tengo idea como evitar el "_01", para que me los sume dentro del mismo grupo.

Desde ya muchas gracias a quien puda aportar algo,
Saludos.
__________________
Mientras tanto aqui, en la Gran Ciudad...
Una nueva hora,...Comienza
:Zzz:
horizonte está desconectado   Responder Citando
Antiguo 29-abr-2008, 18:03   #2 (permalink)
Colaborador
iislas ha deshabilitado el karma
 
Fecha de Ingreso: julio-2007
Mensajes: 1.149
Re: Se resuelve usando Group by y sum()?

group by left(campo, 4)
iislas está desconectado   Responder Citando
Antiguo 29-abr-2008, 18:26   #3 (permalink)
horizonte ha deshabilitado el karma
 
Avatar de horizonte
 
Fecha de Ingreso: octubre-2005
Ubicación: A 50cm del Monitor(el angulo depende del estado de animo)
Mensajes: 136
Pregunta Re: Se resuelve usando Group by y sum()?

Cita:
Iniciado por iislas Ver Mensaje
group by left(campo, 4)
Hola iislas:

Por lo que averigue esa variante de group by agrupa el campo solo teniendo en cuenta sus 4 primeros caracteres contando de la izquierda.

El tema que el campo por el que debo agrupar("tema") tiene longitud variable, es decir los valores de "tema" son: "teoria simple", "teoria simple 01", "practica compuesta", "practica compuesta 01", "relacion simple", "relacion simple 01",....y asi con todos los temas de la tabla.

A mi se me hace que debo 1° ordenar por dicho campo y luego usar los IF(), pero la veo complicada.

Desde ya muchas gracias,
Saludos.
__________________
Mientras tanto aqui, en la Gran Ciudad...
Una nueva hora,...Comienza
:Zzz:
horizonte está desconectado   Responder Citando
Antiguo 30-abr-2008, 10:41   #4 (permalink)
flaviovich está en el buen camino
 
Avatar de flaviovich
 
Fecha de Ingreso: agosto-2005
Ubicación: Lima, Peru
Mensajes: 1.151
Enviar un mensaje por ICQ a flaviovich Enviar un mensaje por MSN a flaviovich Enviar un mensaje por Skype™ a flaviovich
Re: Se resuelve usando Group by y sum()?

Si los temas terminan en '01', entonces quita ese 01 con
Código:
LEFT( tema , LEN(tema) - CASE WHEN CHARINDEX ( '01' , tema ) = 0 THEN 0 ELSE 2 END )
__________________
Если можешь читать это, то напиши мне..
No repitamos temas, usemos el Motor de busquedas

Última edición por flaviovich; 30-abr-2008 a las 10:47.
flaviovich está desconectado   Responder Citando
Antiguo 30-abr-2008, 11:47   #5 (permalink)
Colaborador
iislas ha deshabilitado el karma
 
Fecha de Ingreso: julio-2007
Mensajes: 1.149
Re: Se resuelve usando Group by y sum()?

http://www.sindominio.net/ayuda/preg...eligentes.html
iislas está desconectado   Responder Citando
Antiguo 02-may-2008, 21:49   #6 (permalink)
horizonte ha deshabilitado el karma
 
Avatar de horizonte
 
Fecha de Ingreso: octubre-2005
Ubicación: A 50cm del Monitor(el angulo depende del estado de animo)
Mensajes: 136
De acuerdo Re: Se resuelve usando Group by y sum()?

Cita:
Iniciado por flaviovich Ver Mensaje
Si los temas terminan en '01', entonces quita ese 01 con
Código:
LEFT( tema , LEN(tema) - CASE WHEN CHARINDEX ( '01' , tema ) = 0 THEN 0 ELSE 2 END )
Gracias por la ayuda, funciono barbaro.

iislas:

Lei algo del link que posteastes, y coincido en casi todo, salvo que los manuales no me los leo de ppio a fin, muchos dicen que hay cosas que no las aprendes hasta que las necesitas.

Muchas gracias a ambos!,
Saludos.
__________________
Mientras tanto aqui, en la Gran Ciudad...
Una nueva hora,...Comienza
:Zzz:
horizonte está desconectado   Responder Citando
Respuesta
Calificación: Calificación de Tema: 1 votos, 4,00 de promedio.


Herramientas
Desplegado

Normas de Publicación
No puedes crear nuevos temas
No puedes responder temas
No puedes subir archivos adjuntos
No puedes editar tus mensajes

BB code is Activado
Caritas están Activado
[IMG] está Activado
Código HTML está Desactivado


La Zona horaria es GMT -6. Ahora son las 01:30.


Message Board Statistics

LinkBacks Enabled by vBSEO 3.1.0

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93