jueves, 9 de agosto de 2018

TSQL - Negar La Expresión de la Clausula Where (SELECT) - Data Mining

Hola, hoy vamos a revisar cómo negar una expresión lógica contenida en una clausula WHERE. 

Vamos a iniciar tomando como base la consulta que vimos en el post anterior donde aplicamos un filtro a un campo tipo fecha utilizando el operador BETWEEN:



Al negar la clausula lo que obtenemos es el resultado opuesto a lo que tenemos en la misma. En este caso, lo que vamos a obtener es todos los registros que en el campo OrderDATE tengan un valor de fecha que no este entre el primero de Enero y el 31 de Enero del año 1998. Para hacer esto, solo agregamos el operador NOT:



Como ven, la consulta ahora excluye los registros de la clausula WHERE y devuelve 775 filas. Incluyamos un filtro adicional que nos permita extraer todos los registros cuyo EmployeeID sea 1:



Al aplicar este último filtro, tenemos 114 registros y si lo negamos tenemos:



661 registros. Entonces, si sumamos 114 + 661 tenemos 775 registros, esto en últimas no es más que una operación de unión de las que se ven cuando se estudia álgebra de conjuntos. En un diagrama de ven se vería de la siguiente forma:



Este es el código fuente:


Código:

No hay comentarios.:

Publicar un comentario