SQL Server - Consultar registros con diferentes resultados

 
Vista:
sin imagen de perfil

Consultar registros con diferentes resultados

Publicado por Carlos (12 intervenciones) el 28/11/2013 18:36:09
Buenas Tardes, soy nuevo en este foro pero siempre busco como resolver problemas tanto de programacion como de base de datos. Tengo un problema de consulta por SQL. Tengo una tabla llamada OBLIGACION y hay un campo llamado OBL_PROB, este campo es una cadena que, por un aplicativo usando radiobutton, recibe 3 diferentes tipos de parametros: PROVEEDOR, OBLIGADO y/o No aplica.

En mi tabla Obligacion tengo lo siguiente: cada obkligacion tiene un codigo de seccion, osea que una seccion puede tener 0 o mas de 1 obligacion:

SECCION OBL_DENOM OBL_PROB
-----------------------------------------------------------------
Seccion 1 - Obligacion 01 - Obligado
Seccion 1 - Obligacion 02 - Proveedor

Seccion 2 - Obligacion 03 - Proveedor

Seccion 3 - Obligacion 04 - No aplica
Seccion 3 - Obligacion 05 - Obligado

El problema ahora es que Quisiera hacer una consulta que me muestre que para cada seccion, para cada OBL_PROB realize una cuenta, de la siguiente manera:


SECCION OBL_DENOM TOTAL
-----------------------------------------------------------
Seccion 1 - Proveedor - 1
Seccion 1 - Obligado - 1
Seccion 1 - No aplica - 0

Seccion 2 - Proveedor - 1
Seccion 2 - Obligado - 0
Seccion 2 - No aplica - 0

Seccion 3 - Proveedor - 0
Seccion 3 - Obligado - 1
Seccion 3 - No aplica - 1

Ayudenme porfavooor que ya no se que haceeer T_T

Les agradezco de antemano!!
Valora esta pregunta
Me gusta: Está pregunta es útil y esta claraNo me gusta: Está pregunta no esta clara o no es útil
0
Responder
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Consultar registros con diferentes resultados

Publicado por Isaias (4558 intervenciones) el 28/11/2013 19:43:27
¿No te sirve mas una presentación asi?

SELECT SECCION,
SUM(CASE WHEN OBL_PROB = 'Obligado' THEN 1 ELSE 0 END) AS [Obligado],
SUM(CASE WHEN OBL_PROB = 'Proveedor' THEN 1 ELSE 0 END) AS [Proveedor],
SUM(CASE WHEN OBL_PROB = 'No aplica' THEN 1 ELSE 0 END) AS [No aplica]
FROM OBLIGACION
GROUP BY SECCION
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consultar registros con diferentes resultados

Publicado por Carlos (12 intervenciones) el 28/11/2013 19:57:49
Claro eso es lo que inicialmente estaba realizando pero lo queria hacer uno encima de otro y no de costado porque a su vez, la opcion de Proveedor se divide en varios tipos, la opcion de Obligado tambien en varios tipo.. y en vez de hacerlo extenso hacia la derecha, quiero hacerlo hasta abajo.
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Consultar registros con diferentes resultados

Publicado por Isaias (4558 intervenciones) el 28/11/2013 21:02:41
¿Tienes un CATALOGO de OBL_PROB?
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consultar registros con diferentes resultados

Publicado por Carlos (12 intervenciones) el 28/11/2013 21:34:59
Catalogo??? no entiendo, simplemente en mi aplicacion tengo dos radiobutton, cuando marco el que dice proveedor, se guarda la cadena PROVEEDOR en el campo OBL_PROV y si marco el que dice Obligado, se guarda la cadena OBLIGADO en el campo OBL_PROV, y si no marco nada, me guarda la cadena NO APLICA.

Quiero que aparezca asi:

Seccion Tipo Cantidad
---------------------------------------------------
S1 Proveedor 1
S1 Obligado 1
S1 No Aplica 1


porque luego quiero hacer esto:

Tipo SubTipo
--------------------------------
Proveedor A
Proveedor B
Obligado 1
Obligado 2

porque si me aparece a lo largo asi:

Seccion - Proveedor - Obligado - No Aplica
S1 1 2 3 no podre descomponer el tipo
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
Imágen de perfil de Isaias
Val: 3.250
Oro
Ha mantenido su posición en SQL Server (en relación al último mes)
Gráfica de SQL Server

Consultar registros con diferentes resultados

Publicado por Isaias (4558 intervenciones) el 28/11/2013 22:59:35
Veamos

Solo tienes TRES posibles OBL_PROB:

OBLIGADO
PROVEEDOR
NO APLICA

Y por cada SECCION, solo tendrás 1 de cada uno, esto es, sección 3, no puede tener 2 proveedor y 3 obligado??
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar
sin imagen de perfil

Consultar registros con diferentes resultados

Publicado por Carlos (12 intervenciones) el 29/11/2013 05:10:18
Claaaro, osea ponte una Obligacion tiene 3 opciones: OBLIGADO, PROVEEDOR y NO APLICA
Por ejemplo podria tener 10 secciones y 100 obligaciones..
Pueden ser 10 obligaciones por seccion o sino tambien
20 obligaciones en 5 secciones o tambien
9 secciones con 1 obligaciones y la seccion que queda puede tener las 91 restantes..
Una seccion puede tener 0 o 1 o mas obligaciones

Y obvio si una seccion tiene (por ejemplo) 10 obligaciones, en esas 10 se repartiran las 3 opciones.. que podrian ser 3 obligados, 7 proveedor, 0 no aplica o sino 3 obligado, 3 proveedor, 4 no aplica..

una seccion puede tener una o mas obligaciones y cada obligacion tiene su posible OBL_¨PROB

Ayudenmeeee *-*
Valora esta respuesta
Me gusta: Está respuesta es útil y esta claraNo me gusta: Está respuesta no esta clara o no es útil
0
Comentar