Utilizamos cookies propias y de terceros para mejorar la experiencia de navegación, y ofrecer contenidos y publicidad de interés.
Al continuar con la navegación entendemos que se acepta nuestra política de cookies.
Iniciar sesión Cerrar
Correo:
Contraseña:
Entrar
Recordar sesión en este navegador
Iniciar sesiónIniciar sesiónCrear cuentaCrear cuenta

Microsoft SQL Server - CONSULTAS COMPLEJAS DE SQL SERVER

Vista:
Me gusta: Está pregunta es útil y esta clara
0
No me gusta: Está pregunta no esta clara o no es útil
 
Asunto:

CONSULTAS COMPLEJAS DE SQL SERVER

Autor:Jorge (1 intervención)
Fecha:14/12/2012 22:41:10
Estimados.

Tengo una pequeña consulta al momento de realizar un select complejo, me explico:

Se tiene por ejemplo la siguiente tabla de estados:
ID NOMBRE
A Activo
R Rechazada
P Proceso

Y tengo otra tabla por ejemplo que tiene:

ID NUMERO ESTADO
1 20607 R
2 20608 A
3 20608 A

La consulta que tengo que realizar me tiene que devolver lo siguiente:
NUMERO ESTADO TOTAL
20607 A 0
20607 R 1
20607 P 0
20608 A 2
20608 R 0
20608 P 0

Si alguien me puede ayudar con la consulta, se lo tendría enormemente agradecido, la consulta es en SQL SERVER 2008.
Responder
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

CONSULTAS COMPLEJAS DE SQL SERVER

Autor:Isaias (1112 intervenciones)
Fecha:17/12/2012 22:16:13
Con mucho gusto te ayudo, solo tengo la duda, ¿que avance llevas de tu consulta?
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

CONSULTAS COMPLEJAS DE SQL SERVER

Autor:Pedro (1 intervención)
Fecha:08/01/2013 20:04:58
Amigo esta consulta quedaría de la siguiente manera:

select numero,estado, count(estado) total
from tabla2
group by numero

Checa y me parece que así debe de salir.
Comentar
Me gusta: Está respuesta es útil y esta clara
0
No me gusta: Está respuesta no esta clara o no es útil
 
Asunto:

CONSULTAS COMPLEJAS DE SQL SERVER

Autor:Quique (1 intervención)
Fecha:11/04/2014 14:44:25
Esta consulta debería funcionar.
Al menos en MySQL funciona, en otros SGBD puede haber que cambiar la función IF por otra que realice unha función similar: obtener NULL cuando t1.id sea distinto de t2.estado y cualquier cosa que no sea NULL en caso contrario

SELECT t2.numero, t1.id, count(IF(t1.id=t2.estado, 1, NULL))
FROM t1, t2
GROUP BY t2.numero, t1.id;

Un saludo
Comentar