Excluir registros según premisa en sentencia sql

Tengo una tabla de logs para controlar alta, baja, modificación y eliminación de registros de los usuarios. El tema es que quiero poder consultar en una tabla y lincar al correspondiente registro pero no se como excluir los registros que finalmente estan eliminados. Es decir, la consulta me muestra lo siguiente y no me tendría que mostrar los registros de id 1 ya que finalmenta está eliminado y ya no existe en la BD, tan solo me debería de mostrar los registros con id 2:

FECHA | TABLA | ID | ACCIÓN 

12122023 | Noticias | 1 | Eliminación
11122023 | Noticias | 1 | Modificación
10122023 | Noticias | 1 | Alta
12122023 | Noticias | 2 | Modificación
12122023 | Noticias | 2 | Alta

2 respuestas

Respuesta
3

Si quiere una consulta que le devuelva los ID de la tabla de log que no han sido eliminados, pruebe con algo así:

select distinct [L1].[ID]

from [NombreDeLaTablaDeLOG] L1

where not exists (

    select [L2].[ID]

    from [NombreDeLaTablaDeLOG] L2

    where

    [L1].[ID] = [L2].[ID] and

    [L1].[ACCIÓN] = 'Eliminación')

Respuesta
2

Puede hacerlo con NOT EXIST y una subconsulta, lamentablemente no se puede subir el código, le recomiendo hacer la consulta por lawebdelprogramador para subir código e imágenes

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas