SQL Server - Comparar registros de una misma tabla

   
Vista:

Comparar registros de una misma tabla

Publicado por Jhonatanr enriquezjhonatan@gmail.com (3 intervenciones) el 21/07/2014 18:09:29
Buen día, por favor necesito ayuda con la consulta de una misma tabla de SQL Server.

Tengo datos duplicados en una misma tabla por el campo IDENTIDAD y necesito seleccionar solo una según cumpla diferentes condiciones, según sea el caso podemos insertar otro campo para identificar el registro que gana entre 1 y 0.

ejemplo.

ID | IDENTIDAD| FECHA | ESTADO | PESO_ESTADO | BASE
0701 | 2405 | 07/07/2014 | Aprobada | 1 | 1
0702 | 2405 | 07/07/2014 | Aprobada | 1 | 2
-----------------------------------------------------------------------------------------------------
0706 | 1308 | 07/07/2014 | Evaluación | 2 | 1
0705 | 1308 | 06/07/2014 | Evaluación | 2 | 2
-----------------------------------------------------------------------------------------------------
0708 | 4321 | 09/07/2014 | Evaluación | 2 | 2
0709 | 4321 | 09/07/2014 | Observado | 3 | 1
------------------------------------------------------------------------------------------------------
0708 | 5893 | 09/07/2014 | Aprobada | 1 | 2
0709 | 5893 | 10/07/2014 | Observado | 3 | 1

Caso_1: Misma FECHA , Mismo ESTADO = "Gana quien tenga menos valor en el campo BASE"
Caso_2: Diferente FECHA, Mismo ESTADO = "Gana quien tenga menos valor en el campo BASE"
Caso_3: Misma FECHA, Diferente ESTADO = "Gana quien tenga menos valor en el campo PESO_ESTADO"
Caso_4: Diferente FECHA, Diferente ESTADO = "Gana quien tenga menos valor en el campo PESO_ESTADO"

Gracias de antemano por sus pronto aportes.
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

Comparar registros de una misma tabla

Publicado por Isaias (3181 intervenciones) el 21/07/2014 20:29:55
No veo forma de lograr lo que deseas, si no es que FORMANDO GRUPO DE INFORMACION, ya que solo "TU", sabes como deberán compararse los campos y quien gana o no.
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

Comparar registros de una misma tabla

Publicado por SQL MASTER (1 intervención) el 22/07/2014 22:34:41
Veo que tu ejercicio carece de sentido.
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

Comparar registros de una misma tabla

Publicado por Jhonatanr (3 intervenciones) el 22/07/2014 23:04:19
Aquí algo en lo que estuve trabajando, pero aun no obtengo el resultado buscado.

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
select c.fecha, c.identidad, c.peso_estado, min(c.base) base
from Tabla c,
(
	select a.fecha, a.identidad, a.peso_estado, min(a.base) base
	from Tabla a,
	(
		select m.fecha, m.identidad, m.base, min(m.peso_estado) peso_estado
		from Tabla m,
		(
			select x.fecha, x.identidad, x.base, min(x.peso_estado) peso_estado
			from Tabla x,
			(
				select o.*
				from Tabla o
				-- tabla --> donde se encuentran todos los registros duplicados
			) q
			where x.fecha = q.fecha
			and x.identidad = q.identidad
			group by x.fecha, x.identidad, x.base
		)n
		where m.fecha <> n.fecha
		and m.identidad = n.identidad
		group by m.fecha, m.identidad, m.base
	)b
	where a.fecha = b.fecha
	and a.identidad =b.identidad
	group by a.fecha, a.identidad, a.peso_estado
)d
where c.fecha <> d.fecha
and c.identidad = d.identidad
group by c.fecha, c.identidad, c.peso_estado
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