跳到主要内容

Boolean

概览

BOOLEAN(别名 BOOL)表示 TRUEFALSE,始终占用 1 个字节的存储空间。数值和字符串输入在可能的情况下会自动强制转换为布尔值。

输入类型转换为 TRUE转换为 FALSE说明
数值任何非零值0负数也会转换为 TRUE。
字符串TRUEFALSE不区分大小写;其他文本无法转换。

示例

SELECT
0::BOOLEAN AS zero_is_false,
42::BOOLEAN AS nonzero_is_true,
'True'::BOOLEAN AS string_true,
'false'::BOOLEAN AS string_false;

结果:

┌───────────────┬──────────────────┬───────────────┬────────────────┐
│ zero_is_false │ nonzero_is_true │ string_true │ string_false │
├───────────────┼──────────────────┼───────────────┼────────────────┤
│ false │ true │ true │ false │
└───────────────┴──────────────────┴───────────────┴────────────────┘
-- 转换不支持的文本会引发错误。
SELECT 'yes'::BOOLEAN;

结果:

ERROR 1105 (HY000): QueryFailed: [1006]cannot parse to type `BOOLEAN` while evaluating function `to_boolean('yes')` in expr `CAST('yes' AS Boolean)`
欢迎体验 Databend Cloud

基于 Rust + 对象存储构建的新一代多模态数仓,一个平台即可进行 BI、向量、全文检索及地理空间分析。

支持标准 SQL,自动弹性伸缩,助您快速构建现代化数据平台。

注册即领 ¥200 代金券。

注册体验