Listado completo de tutoriales
30 - Otros operadores relacionales (is null) |
Hemos aprendido los operadores relacionales "=" (igual), "<>" (distinto), ">" (mayor), "<" (menor), ">=" (mayor o igual) y "<=" (menor o igual). Dijimos que no eran los únicos.
Existen otro operador relacional "is null".
Se emplea el operador "is null" para recuperar los registros en los cuales esté almacenado el valor "null" en un campo específico:
select * from libros where editorial is null;
Para obtener los registros que no contiene "null", se puede emplear "is not null", esto mostrará los registros con valores conocidos.
Siempre que sea posible, emplee condiciones de búsqueda positivas ("is null"), evite las negativas ("is not null") porque con ellas se evalúan todos los registros y esto hace más lenta la recuperación de los datos.
Ingresemos el siguiente lote de comandos en el SQL Server Management Studio:
if object_id ('libros') is not null drop table libros; create table libros( codigo int identity, titulo varchar(40) not null, autor varchar(20) default 'Desconocido', editorial varchar(20), precio decimal(6,2), ); go insert into libros values('El aleph','Borges','Emece',15.90); insert into libros values('Cervantes y el quijote','Borges','Paidos',null); insert into libros values('Alicia en el pais de las maravillas','Lewis Carroll',null,19.90); insert into libros values('Martin Fierro','Jose Hernandez','Emece',25.90); insert into libros (titulo,autor,precio) values('Antología poética','Borges',25.50); insert into libros (titulo,autor,precio) values('Java en 10 minutos','Mario Molina',45.80); insert into libros (titulo,autor) values('Martin Fierro','Jose Hernandez'); insert into libros (titulo,autor) values('Aprenda PHP','Mario Molina'); select * from libros where editorial is null; select * from libros where editorial is not null;
Tenemos como resultado: