暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

AntDB 使用教程 / SQL语言 / 数据类型18

tocata 2024-08-16
26

位串类型

位串就是一串 1 和 0 的串。它们可以用于存储和可视化位掩码。有两种类型的 SQL 位类型:bit(*n*)bit varying(*n*),其中 n 是一个正整数。

bit类型的数据必须准确匹配长度*n*;试图存储短些或者长一些的位串都是错误的。bit varying 数据是最长 n 的变长类型,更长的串会被拒绝。写一个没有长度的 bit 等效于 bit(1),没有长度的 bit varying 意味着没有长度限制。

注意

如果显式地把一个位串值转换成 bit(*n*), 那么它的右边将被截断或者在右边补齐零,直到刚好 n 位, 而且不会抛出任何错误。类似地,如果显式地把一个位串数值转换成 bit varying(*n*),如果它超过了 n 位, 那么它的右边将被截断。

举例:使用位串类型

CREATE TABLE test (a BIT(3), b BIT VARYING(5));
INSERT INTO test VALUES (B'101', B'00');
INSERT INTO test VALUES (B'10', B'101');

ERROR:  bit string length 2 does not match type bit(3)

INSERT INTO test VALUES (B'10'::bit(3), B'101');
SELECT * FROM test;

  a  |  b
-----+-----
 101 | 00
 100 | 101
复制

一个位串值对于每 8 位的组需要一个字节,外加总共 5 个或 8 个字节,这取决于串的长度。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论

暂无图片
获得了1277次点赞
暂无图片
内容获得527次评论
暂无图片
获得了32次收藏