Oracle - Consulta con not exists no me funciona correctamente

 
Vista:

Consulta con not exists no me funciona correctamente

Publicado por Antonio (1 intervención) el 12/09/2014 02:20:31
Hola que tal quisiera que por favor me puedan ayudar con el siguiente problema:

Tengo la siguiente query:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
select *
from serf_movimientos m
where m.id_mov = 6
and to_char(m.fecha_operacion,'rrrr')= 2014
and  exists (
            select *
            from  serf_movimientos mm
            where mm.id_no_fianza = m.id_no_fianza
            and   mm.id_inclusion = m.id_inclusion
            and   mm.id_mov = 4
            and   mm.no_movimiento<m.no_movimiento
            and   not exists (
                             select *
                             from  serf_movimientos mmn
                             where mmn.id_no_fianza = mm.id_no_fianza
                             and   mmn.id_inclusion = mm.id_inclusion
                             and   mmn.id_mov <> 10
                             and   mmn.no_movimiento > m.no_movimiento
                             and   mmn.no_movimiento  <  mm.no_movimiento
                             )
           );

Lo que obtengo con esta consulta es algo así :
10
10
4
3
8
9
10
10
10
6
lo que pretendo con el not exists es eliminar los registros 3,8,9 y dejar solo los 10

y que quede de la siguiente manera
10
10
4
10
10
10
6
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

Consulta con not exists no me funciona correctamente

Publicado por luis (235 intervenciones) el 12/09/2014 21:26:33
Hola, lo que el "NOT EXISTS" verifica que no exista en una lista, verifica los valores de que retorna cada subquery, para no considerar valores puedes usar el " NOT IN (3,8,9) " según como lo desees.

Por mi parte no veo ningún problema solo que hay que utilizar las condiciones adecuadas.

Saludos.

Luis
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