Introduction to MariaDB boolean
MariaDB Boolean Type is a data type in MariaDB responsible for storing the values for Boolean query operations defined as TRUE or FALSE. In Maria, while we design a database, we have to consider several present data types to choose the finest ones for saving the data records, including numerical type, Temporal, string, and Spatial data types. From this, the numeric type contains different data types supported like TINYINT, SMALLINT, MEDIUMINT, INT, BIGINT, DECIMAL, FLOAT, DOUBLE, BIT. Hence, among this, the MariaDB implements the TINYINT (1) for representing the Boolean values in the server operations. But here, for true, we will use non-zero (1), and for false, we will use zero (0). Also, the BOOL and BOOLEAN can be denoted as the synonym of TINYINT (1).
Let us discuss the syntax for Boolean Data type in MariaDB as follows:
To apply Boolean literals, a user needs to implement the constants TRUE and FALSE, which calculate to 1 and 0 simultaneously as coded below:
SELECT true, false, False, True, FALSE, TRUE;
Here, we have typed a command above using the SELECT statement to view the case sensitivity as which gives output as 100101, where 1 associate to the true value and 0 associates to a false one.
We will use the Boolean type while adding a column to hold the Boolean values in table creation which has the syntax structure as follows:
CREATE TABLE TableName (Column1 data type constraints, Column2 data type constraints,….., Column5 BOOLEAN,……..ColumnN data type constraints);
Here, the TableName denotes the table name and the column with data type as BOOLEAN defines the table column having the Boolean value as True and False.
How boolean type works in MariaDB?
In MariaDB, the Boolean type holds the following syntax structure as BOOL, BOOLEAN. These data types describe the substitutes for the TINYINT(1), where the value 0 is considered false and non-zero ones are considered true. Perhaps, the true and false values are simply known as the pseudonyms for 1 and 0, respectively. You can use the IS operator for testing the values against a Boolean type.
For illustration, let us write the query as:
CREATE TABLE Bool(j, BOOLEAN);
It provides the output as where the field j in the table bool has type as TINYINT(1), NULL as YES; the Default value is NULL. The TINYINT data type holds the integer values within the range -128 to 127 signed in MariaDB.
Examples of MariaDB boolean.
Let us illustrate the MariaDB Boolean type commands in the server and view their respective outputs as follows:
Here, MariaDB stores this Boolean value in the database table as an integer. We will demonstrate the statement with the example below by creating a table defined as Task using data types related to table columns as specified:
CREATE TABLE Task (TaskID INT PRIMARY KEY AUTO_INCREMENT, Task_Title VARCHAR(255) NOT NULL, Task_Completed BOOLEAN);
The above table creates a Boolean column with Boolean values to be stored along with some other related table columns in the MariaDB table named Task_Completed. But we will view the table definition using the DESCRIBE TABLE keyword command; then it will show the column data type as TINYINT(1) even when defined the column as BOOLEAN type.
So, let us have a look at the query executed as:
Now, we will enter some record rows in the table using the INSERT query statement as:
INSERT INTO Task(Task_Title, Task_Completed) VALUES(‘MariaDB Boolean value’, True),(‘Create Table in database’, False);
The query execution will insert the column value into the table Task, where the Boolean values in MariaDB get converted into 0 or 1 before storing the row values into the Boolean columns. Hence, we can view the table contents using the SELECT keyword to retrieve the Task table data, as shown below:
SELECT Task_ID, Task_Title, Task_Completed FROM Task;
As you can see that the Boolean Table column value is converted as 1 for true and 0 for false. Since Boolean is TINYINT(1) therefore, we can enter a value other than 0 and 1 into the Task table Boolean column, which can be illustrated with the query below:
INSERT INTO Task(Task_Title, Task_Completed) VALUES(‘Check Boolean using a numeric value’,3);
select * from task;
Let us view the output, which is functioning fine as:
Suppose, if you need to produce the output result as TRUE and FALSE then, we can involve the IF function in MariaDB with the previous query as follows:
SELECT TaskID, Task_Title, IF(Task_Completed,’True’,’False’) Task_Completed FROM Task;
As you can see, the Boolean values are presented as True and False values.
MariaDB Boolean Operators
To fetch all the tasks which are completed from the Task table, we need to come up using the following query code:
SELECT TaskID, Task_Title, Task_Completed FROM Task WHERE Task_Completed = TRUE;
As you can see from the above result, only the completed task and holds value as 1(true) is returned when the query is executed. You can fix this we must apply the IS operator in the query statement as:
SELECT TaskID, Task_Title, Task_Completed FROM Task WHERE Task_Completed IS TRUE;
In this instance, we have used the operator IS in the SELECT query statement to check a value against the Boolean type value.
Again, to retrieve the pending or remaining tasks values from the Task table, we will implement the IS FALSE or IS NOT TRUE types of keywords written as follows:
SELECT TaskID, Task_Title, Task_Completed FROM Task WHERE Task_Completed IS NOT TRUE;
As you can see, the result displays the row which holds the Boolean value 0, i.e. false, as in the query, the keyword IS NOT TRUE is used.
- MariaDB Boolean Type is a MariaDB data type from the numeric type, which denotes the TINYINT type where a zero value defines the false part, and a non-zero value means for true one in the query operations.
- Since MariaDB or MySQL does not support any built-in numeric type as Boolean values, but perhaps it provides the TINYINT data type to conveniently using BOOL or BOOLEAN as a substitute for TINYINT (1).
This is a guide to MariaDB boolean. Here we discuss How boolean type works in MariaDB along with the Examples and MariaDB Boolean Operators. You may also have a look at the following articles to learn more –