- 1、本文档共4页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
PostgreSql基礎知识
PostgreSql 常见数据类型1.CREATE TYPE 命令增加新的数据类型
2.数据类型
名字
别名
描述
bigint
int8
有符号 8 字节整数
bigserial
serial8
自增 8 字节整数
bit [ (n) ]
定长位串
bit varying [ (n) ]
varbit
变长位串
boolean
bool
逻辑布尔值(真/假)
box
平面中的矩形
bytea
二进制数据(字节数组)
character varying [ (n) ]
varchar [ (n) ]
变长字符串
character [ (n) ]
char [ (n) ]
定长字符串
cidr
IPv4 或 IPv6 网络地址
circle
平面中的圆
date
日历日期(年, 月, 日)
double precision
float8
双精度浮点数字
inet
IPv4 或 IPv6 网络地址
integer
int, int4
有符号 4 字节整数
interval [ (p) ]
时间间隔
line
平面中的无限长直线
lseg
平面中的线段
macaddr
MAC 地址
money
货币金额
numeric [ (p, s) ]
decimal [ (p, s) ]
可选精度的准确数字
path
平面中的几何路径
point
平面中的点
polygon
平面中的封闭几何路径
real
float4
单精度浮点数
smallint
int2
有符号 2 字节整数
serial
serial4
自增 4 字节整数
text
变长字符串
time [ (p) ] [ without time zone ]
一天中的时间
time [ (p) ] with time zone
timetz
一天里的时间,包括时区
timestamp [ (p) ] [ without time zone ]
日期和时间
timestamp [ (p) ] with time zone
timestamptz
日期和时间,包括时区
3.数值类型
名字
存储空间
描述
范围
smallint
2 字节
小范围整数
-32768 到 +32767
integer
4 字节
常用的整数
-2147483648 到 +2147483647
bigint
8 字节
大范围的整数
-9223372036854775808 到 9223372036854775807
decimal
变长
用户声明精度,精确
无限制
numeric
变长
用户声明精度,精确
无限制
real
4 字节
变精度,不精确
6 位十进制数字精度
double precision
8 字节
变精度,不精确
15 位十进制数字精度
serial
4 字节
自增整数
1 到 2147483647
bigserial
8 字节
大范围的自增整数
1 到 9223372036854775807
3. 整数类型smallint, integer, bigint 类型存储各种范围的全部是数字的数,也就是没有小数部分的数字。试图存储超出范围以外的数值将导致一个错误。
常用的类型是 integer ,因为它提供了在范围、存储空间、性能之间的最佳平衡。一般只有在磁盘空间紧张的时候才使用 smallint 。而只有在 integer 的范围不够的时候才使用 bigint ,因为前者绝对快得多。
bigint 类型可能不是在所有平台上都运转正确,因为它依赖编译器对八字节整数的支持。在那些没有八字节整数支持的机器上,bigint 的作用和 integer 一样(但是仍然占据八字节存储)。不过,我们目前还没听说过有这样的平台。
SQL 只声明了整数类型 integer(或 int) 和 smallint 。类型 bigint 和类型别名 int2, int4, int8 都是扩展,并且也在许多其它 SQL 数据库系统中使用。
4.任意精度数值numeric 类型可以存储最多 1000 位精度的数字并且准确地进行计算。特别建议将它用于货币金额和其它要求精确计算的场合。不过,numeric 类型上的算术运算比整数类型要慢很多。
术语:一个 numeric 类型的标度(scale)是小数部分的位数,精度(precision)是全部数据位的数目,也就是小数点两边的位数总和。因此数字 23.5141 的精度为 6 而标度为 4 。你可以认为整数的标度为零。
numeric
文档评论(0)