logo

MySQL Booleano

Um Booleano é o tipo de dados mais simples que sempre retorna dois valores possíveis, verdadeiro ou falso. Pode sempre ser usado para obter uma confirmação na forma de valor SIM ou Não.

O MySQL não contém tipos de dados Booleanos ou Bool integrados. Eles fornecem um TINYINT tipo de dados em vez de tipos de dados Booleanos ou Bool. MySQL considerou o valor zero como falso e o valor diferente de zero como verdadeiro. Se você quiser usar literais booleanos, use verdadeiro ou falso que sempre avalia os valores 0 e 1. O 0 e 1 representam os valores inteiros.

Execute a seguinte instrução para ver os valores inteiros dos literais booleanos:

 Mysql> Select TRUE, FALSE, true, false, True, False; 

Após a execução bem-sucedida, o seguinte resultado aparece:

MySQL Booleano

Exemplo booleano do MySQL

Podemos armazenar um valor booleano na tabela MySQL como um tipo de dados inteiro. Vamos criar uma tabela student que demonstra o uso do tipo de dados booleano no MySQL:

 mysql> CREATE TABLE student ( studentid INT PRIMARY KEY AUTO_INCREMENT, name VARCHAR(40) NOT NULL, age VARCHAR(3), pass BOOLEAN ); 

Na consulta acima, podemos ver que o campo pass é definido como booleano ao mostrar a definição de uma tabela; contém TINIINT da seguinte forma:

js carregar
 mysql> DESCRIBE student; 

MySQL Booleano

Vamos adicionar duas novas linhas na tabela acima com a ajuda da seguinte consulta:

 mysql> INSERT INTO student(name, pass) VALUES('Peter',true), ('John',false); 

Quando a consulta acima é executada, imediatamente o MySQL verifica o tipo de dados booleano na tabela. Se os literais booleanos forem encontrados, eles serão convertidos em valores inteiros 0 e 1. Execute a seguinte consulta para obter os dados da tabela do aluno:

 Mysql> SELECT studentid, name, pass FROM student; 

Você obterá a seguinte saída onde o literal verdadeiro e falso é convertido em valores 0 e 1.

MySQL Booleano

Como o MySQL sempre usa TINYINT como Booleano, também podemos inserir quaisquer valores inteiros na coluna Booleana. Execute a seguinte instrução:

 Mysql> INSERT INTO student(name, pass) VALUES('Miller',2); 

Você obterá o seguinte resultado:

MySQL Booleano

Em alguns casos, você precisa obter o resultado em literais verdadeiros e falsos. Nesse caso, você precisa executar a função if() com a instrução select da seguinte maneira:

 Mysql> SELECT studentid, name, IF(pass, 'true', 'false') completed FROM student1; 

Ele dará a seguinte saída:

MySQL Booleano

Operadores Booleanos MySQL

O MySQL também nos permite usar operadores com o tipo de dados Booleano. Execute a seguinte consulta para obter todos os resultados de aprovação da tabela student.

 SELECT studentid, name, pass FROM student1 WHERE pass = TRUE; 

Esta instrução retorna a seguinte saída:

MySQL Booleano

A instrução acima só retorna o resultado da aprovação se o valor for igual a 1. Podemos consertar isso usando o É operador. Este operador valida o valor com o valor booleano. A seguinte declaração explica isso:

 SELECT studentid, name, pass FROM student1 WHERE pass is TRUE; 

Após executar esta instrução, você obterá o seguinte resultado:

MySQL Booleano

Se você quiser ver o resultado pendente, use É FALSO ou NÃO É VERDADE operador conforme abaixo:

 SELECT studentid, name, pass FROM student1 WHERE pass IS FALSE; OR, SELECT studentid, name, pass FROM student1 WHERE pass IS NOT TRUE; 

Você obterá a seguinte saída:

MySQL Booleano