博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Postgresql9.6中的数字和字符类型
阅读量:4291 次
发布时间:2019-05-27

本文共 998 字,大约阅读时间需要 3 分钟。

注:红色的为常用类型

数字类型

名字 存储尺寸 描述 范围
smallint 2字节 小范围整数 -32768 to +32767
integer 4字节 整数的典型选择 -2147483648 to +2147483647
bigint 8字节 大范围整数 -9223372036854775808 to +9223372036854775807
decimal 可变 用户指定精度,精确 最高小数点前131072位,以及小数点后16383位
numeric 可变 用户指定精度,精确 最高小数点前131072位,以及小数点后16383位
real 4字节 可变精度,不精确 6位十进制精度
double precision 8字节 可变精度,不精确 15位十进制精度
smallserial 2字节 自动增加的小整数 1到32767
serial 4字节 自动增加的整数 1到2147483647
bigserial 8字节 自动增长的大整数 1到9223372036854775807

1.常用的类型是integer,因为它提供了在范围、存储空间和性能之间的最佳平衡。一般只有在磁盘空间紧张/范围不够的时候才考虑使用 smallint/bigint类型。

2.类型decimal和numeric是等效的。两种类型都是SQL标准的一部分。

NUMERIC(precision, scale)

一个numeric的比例scale是到小数部分的位数,numeric的精度precision是整个数字里全部位的数目。

3.数据类型real和double precision是不准确的、变精度的数字类型。

字符类型

名字 描述
character varying(n), varchar(n) 有限制的变长
character(n), char(n) 定长,空格填充
text 无限变长

1. 在PostgreSQL里。character(n)通常是这三种类型之中最慢的一个,因为它需要额外的存储开销。在大多数情况下,应该使用text或者character varying。

2. 字符类型允许存储的最长字串大概是 1 GB。 (允许在数据类型声明中出现的的 n 的最大值比这还小)
3. 如果你想存储没有特定上限的长字串,那么使用 text 或者没有长度声明词的 character varying

转载地址:http://uphgi.baihongyu.com/

你可能感兴趣的文章
夯实基础:Java 动态代理及 RPC 框架简介
查看>>
深入理解SQL的四种连接-左外连接、右外连接、内连接、全连接
查看>>
如何在子线程和线程池中使用 ThreadLocal 传输上下文
查看>>
Spring中@Async
查看>>
高并发架构系列:如何从0到1设计一个类Dubbo的RPC框架
查看>>
从 0 开始手写实现一个 RPC 框架
查看>>
Java程序员笔记,Spring构造器注入原理细节分析
查看>>
Java程序员笔记——全面了解 Nginx 到底能做什么?
查看>>
在Java中如何优雅地判空
查看>>
MySQL慢查询实践
查看>>
Java中类型参数“T”和无界通配符“?”的区别
查看>>
求职面试:在面试中常问的缓存三大问题及解决方案!
查看>>
几种常用JSON库性能比较,为什么fastjson那么快
查看>>
再有人问你分布式锁,就把这个丢给他!
查看>>
Mysql优化小技巧
查看>>
Nginx作为缓存服务
查看>>
了解 Nginx 的基本概念
查看>>
count(*),count(1)和count(字段)的区别
查看>>
面试大杀器:为什么一定要用MQ中间件?
查看>>
漫谈 MySQL 的锁机制
查看>>