Booleanos en SQL Server - Tipo de dato bit
En algunos motores de bases de datos existe el tipo de dato booleano, boolean o bool que indican que una variable solo podrá tener dos valores: verdadero y falso.
Con este paradigma podemos ahorrar datos y almacenarlos de una buena manera, el problema es que SQL Server no tiene el tipo de dato booleano, o bueno, sí lo tiene, pero es de otra forma.
No existe el tipo de dato boolean, pero sí el tipo de dato bit. Y un bit, como todos sabemos, puede ser un 1 o un 0.
Por lo tanto, el equivalente a un dato booleano en SQL Server es el tipo bit
.
Un ejemplo de bit en la creación de una tabla es el siguiente:
create table usuarios(
correo varchar(255) not null,
suscrito bit not null
);
En ese caso tenemos una lista de usuarios que opcionalmente se pueden suscribir a nuestro boletín.
Para insertar un dato indicamos el 0
o 1
:
insert into usuarios values
('foo@bar.baz', 0),
('staff@gmail.com', 0),
('contacto@parzibyte.me', 1),
('john.galt@atlantis.com', 1);
El número 0
es falso o FALSE
, y el 1
verdadero o TRUE
.
Para consultar en donde sea TRUE
o el bit esté encendido hacemos un where dato = 1,
y para saber si está apagado o en false
hacemos un where dato = 0
como en el ejemplo:
/*
Consultar en donde estén suscritos
*/select * from usuarios where suscrito = 1;
/*
Consultar en donde no
*/select * from usuarios where suscrito = 0;
Se hace lo mismo, usando el símbolo =
para el where
o para el set
.
/*
Marcar como suscrito aquellos usuarios no suscritos
*/update usuarios set suscrito = 1 where suscrito = 0;
Para eliminar también:
/*
Eliminar usuarios que no estén suscritos
*/delete from usuarios where suscrito = 0;
Hemos visto la forma de trabajar con booleanos en SQL Server a través del tipo de dato bit, un equivalente que funciona exactamente igual y que tiene únicamente dos estados: 1
o 0
.
En este post te quiero compartir un código de C++ para listar y cancelar trabajos…
Gracias a WebAssembly podemos ejecutar código de otros lenguajes de programación desde el navegador web…
Revisando y buscando maneras de imprimir un PDF desde la línea de comandos me encontré…
Esta semana estuve recreando la API del plugin para impresoras térmicas en Android (HTTP a…
Hoy te enseñaré a extraer la cadena base64 de una clave PEM usando una función…
Encender un foco con un Bot de Telegram es posible usando una tarjeta como la…
Esta web usa cookies.