pg数据类型及数据类型转换
数字类型:
字符类型:
时间 日期类型:
时间 日期数据 型支持的操 符有 、减、乘、除,下面举例说明:
时间/日期类型常用函数:
布尔类型:
网络地址类型:
当有存储 IP 地址需求的业务场 时,对于 PostgreSQL 并不很 悉的开发者可能会使用字符类型存储,实际上 PostgreSQL 提供用于存储 IPv4 1Pv6 MAC 网络地址的专有网络地址数据类型 ,使用网络地址数据类型存 IP 地址 优于字符类型,因为网络地址类型一方面会对数 合法性进行检查 另一方面 提供了网络数据类型操作符和函数方便应用程序开发。网络地址类型列表:
cidr类型对IP 地址和子网掩码合法性进行检查, 而inet 不会 ,如下所示:
网络地址操作符:
数组类型:
PostgreSQL 支持一维数组和多维数组,常用的数组类型为数字类型数组和字符型数组,也支持枚举类型、复合类型数组。
数组操作符:
数组函数:
范围类型:
范围类型包含一个范围内 数据,常见的范围数据类型有日期范围类型、整数范围类型等;范围类型提供丰富的操作符和函数,对于日期安排、价格范围应用场景比较适用。
每一个范围类型都包含下界和上界,方括号“[”表示包含下界,圆括号“(”表示排除下界,方括号“]”表示包含上界 ,圆 号“)”表示排除上界 ,也就是说方括号表示边界点包含在内,圆括号表示边界点不包含在内,范围类型值的输入有以下几种模式:
范围类型操作符:
范围类型函数:
给范围类型创建索引:
json/jsonb 类型:
PostgreSQL 不只是一个关系型数据库,同时它还支持非关系数据类型 json (JavaScript Object Notation), json 属于重量级的非常规数据类型,下面将介绍 json 类型、 json jsonb差异、 json与jsonb 操作符和函数,以及 jsonb 键值的追加、删除、更新。
查询 json 数据:
jsonb与json 操作符:
jsonb与json 操函数:
jsonb 键/值的追加、删除、更新:
数据类型转换:
前面几小节介绍了 PostgreSQL 常规数据类型和非常规数据类型,这一小节将介绍数据类型转换, PostgreSQL 数据类型转换主要有三种方式:通过格式化函数、 CAST函数、::操作符,下面分别介绍:
通过格式化函数进行转换:
通过 CAST 函数进行转换:
通过::操作符进行转换:
介绍了三种数据 型转换方法,第一种方法 容性相对较好,第三 方法用法简捷。