On this page
The BOOL
data type stores a Boolean value of false
or true
.
Aliases
In CockroachDB, BOOLEAN
is an alias for BOOL
.
Syntax
There are two predefined named constants for BOOL
: TRUE
and FALSE
(the names are case-insensitive).
Alternately, a boolean value can be obtained by coercing a numeric value: zero is coerced to FALSE
, and any non-zero value to TRUE
.
CAST(0 AS BOOL)
(false)CAST(123 AS BOOL)
(true)
Size
A BOOL
value is 1 byte in width, but the total storage size is likely to be larger due to CockroachDB metadata.
Examples
> CREATE TABLE bool (a INT PRIMARY KEY, b BOOL, c BOOLEAN);
> SHOW COLUMNS FROM bool;
+-------------+-----------+-------------+----------------+-----------------------+-------------+
| column_name | data_type | is_nullable | column_default | generation_expression | indices |
+-------------+-----------+-------------+----------------+-----------------------+-------------+
| a | INT | false | NULL | | {"primary"} |
| b | BOOL | true | NULL | | {} |
| c | BOOL | true | NULL | | {} |
+-------------+-----------+-------------+----------------+-----------------------+-------------+
(3 rows)
> INSERT INTO bool VALUES (12345, true, CAST(0 AS BOOL));
> SELECT * FROM bool;
+-------+------+-------+
| a | b | c |
+-------+------+-------+
| 12345 | true | false |
+-------+------+-------+
Supported casting and conversion
BOOL
values can be cast to any of the following data types:
Type | Details |
---|---|
INT |
Converts true to 1 , false to 0 |
DECIMAL |
Converts true to 1 , false to 0 |
FLOAT |
Converts true to 1 , false to 0 |
STRING |
–– |