一、数据类型表
分类名称 | 说明 | 与其他数据库的对比 |
---|---|---|
布尔类型 | pg支持sql标准的boolean数据类型 | 与mysql中的bool、boolean类型相同,占用1字节存储空间 |
数值类型 | 2字节的smallint、4字节的integer、8字节的bigint、精确类型的小数numeric、非精确的浮点小数real和double precision、自增序列类型serial,bigserial、8字节的货币money | 无mysql中的unsigned整数类型,无mysql中1字节的tinyint整数类型和3字节的mediumint整数类型。 |
字符类型 | varchar(n)、chat(n)、text3种类型 | pg中的varchar(n)最大可以存1GB,mysql中的varchar(n)最大只能是64kb,pg中的text相当于mysql中的longtext |
二进制数据类型 | 只有一种bytea类型 | 对应mysql中的blob和longblob类型 |
位串类型 | 由1和0组成的字符串,有bit(n),bit varying(n)两种类型 | mysql也支持此类型,不过pg可以支持更长的bit位,最长可支持83886080个bit位 |
日期和时间类型 | 有date、time、timestamp | pg中可以精确到秒以下,如毫秒,mysql 5.6也可以精确到毫秒,不过日期时间范围与 mysql 差异较大 |
枚举类型 | 枚举类型是一个包含一系列有序静态值的集合的数据类型,相当于某些编程语言中的enum类型 | pg使用枚举类型需要先使用create type 语句创建该类型,mysql中也有枚举类型(enum) |
几何类型 | 点(point)、直线(line)、线段(lseg)、路径(path)、多边形(polygon)、圆(cycle)等类型 | pg中特有的类型,其他数据库中一般没有此类型 |
网络地址类型 | cidr、inet、macaddr | pg中特有的类型,其他数据库中一般没有此类型 |
数组类型 | 可以存储一个数组 | pg中特有的类型,其他数据库中一般没有此类型 |
复合类型 | 可以把已有的简单类型组合成用户自定义的类型,如C语言中的结构体 | 对应其他数据库的自定义类型 |
xml类型 | 可以存储xml数据的类型 | N/A |
json/jsonb类型 | 可以存储json数据的类型 | N/A |
range类型 | 范围类型,可以存储范围数据 | 其他数据库中无此类型 |
对象标识符类型 | pg内部表示对象的类型,如oid类型、regproc类型、regclass类型等 | N/A |
伪类型 | 伪类型不能作为字段的数据类型,但它可以用于声明函数的参数或结果的类型,有any、anyarray、anyelement、cstring、internal、language、handler、record、trigger、void、opaque等10种类型 | N/A |
其他类型 | 不易分类的类型放到这里,如uuid类型、pg_lsn类型等 | N/A |
二、常用的两种类型转换方式
select cast('5' as int),cast('2023-06-25' as date);
select cast(department_id as varchar),department_name from dept;
select '5'::int,'2023-06-25'::date;
select department_id::varchar,department_name from dept;
三、常用的转换函数及操作符
布尔类型操作符:https://xiaosonggong.blog.csdn.net/article/details/131416704
数学函数及操作符:https://xiaosonggong.blog.csdn.net/article/details/131416741
字符串函数及操作符:https://blog.csdn.net/songyundong1993/article/details/131416803?spm=1001.2014.3001.5501文章来源地址https://www.toymoban.com/news/detail-516852.html
文章来源:https://www.toymoban.com/news/detail-516852.html
到了这里,关于PostgreSql 数据类型的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!