「postgre」INT最大值

Posted ftrako

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了「postgre」INT最大值相关的知识,希望对你有一定的参考价值。

一般现在时间戳用INTEGER整型即可,但INT最大长度为21多一点,也就是再过不到20年,就会溢出,所以建议时间戳用INT8类型,同样,数据量可能超过21亿的也应该使用INT8自增,如下:

-- DROP TABLE IF EXISTS location;
create table location (
id SERIAL8 PRIMARY KEY,
ip_int INT8 UNIQUE NOT NULL DEFAULT 0, -- IP整型化
ip VARCHAR(20) NOT NULL DEFAULT ‘‘, -- IP地址
province_id INTEGER NOT NULL DEFAULT 0, -- 省份ID
city_id INTEGER NOT NULL DEFAULT 0, -- 城市ID
province_name VARCHAR(20) NOT NULL DEFAULT ‘‘, -- 省份名称
city_name VARCHAR(20) NOT NULL DEFAULT ‘‘, -- 城市名称
last_date INTEGER NOT NULL DEFAULT CAST(TO_CHAR(NOW(), ‘yyyymmdd‘) AS INTEGER), -- 修改日期,格式20060102表示2006年1月2日
last_time INT8 NOT NULL DEFAULT EXTRACT(EPOCH FROM NOW()) -- 修改时间戳,单位秒
);

以上是关于「postgre」INT最大值的主要内容,如果未能解决你的问题,请参考以下文章

Postgres:获取最大值和最小值,以及它们出现的时间戳

Postgres:一次选择获取最小值,最大值,聚合值

Postgres:获取对应于组中其他列的最大值的列的值

从 Postgres 记录中的行中获取最大值并按多列分组

在特定列 postgres 中选择具有最大值的组中的行

Postgresql:如何为postgres中的相同时间戳选择“媒体”列中的最大值?