全栈工程师-数据库管理-PostgreSQL_数据类型与表设计.docx

全栈工程师-数据库管理-PostgreSQL_数据类型与表设计.docx

  1. 1、本文档共24页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

PAGE1

PAGE1

PostgreSQL数据类型概览

1数值类型详解

在PostgreSQL中,数值类型包括整数、浮点数、定点数和数值类型。每种类型都有其特定的用途和存储需求。

1.1整数类型

smallint:2字节,范围从-32768到32767。

integer:4字节,范围从-2147483648到2147483647。

bigint:8字节,范围从-9223372036854775808到9223372036854775807。

1.2浮点数类型

real:4字节,提供约6位小数的精度。

doubleprecision:8字节,提供约15位小数的精度。

1.3定点数类型

numeric(precision,scale):可以精确到小数点后任意位数,precision表示总位数,scale表示小数点后的位数。

1.4数值类型示例

--创建一个包含整数和浮点数的表

CREATETABLEnumbers(

idintegerPRIMARYKEY,

valuenumeric(10,2),

float_valuereal

);

--插入数据

INSERTINTOnumbers(id,value,float_value)VALUES(1,123.45,123.456);

2字符和字符串类型解析

字符和字符串类型用于存储文本数据,包括固定长度和可变长度的字符串。

2.1字符串类型

charactervarying(n):可变长度字符串,n表示最大长度。

varchar(n):等同于charactervarying(n)。

text:无长度限制的可变长度字符串。

2.2固定长度字符串类型

character(n):固定长度字符串,n表示长度,不足时用空格填充。

2.3字符和字符串类型示例

--创建一个包含字符串和固定长度字符串的表

CREATETABLEstrings(

idintegerPRIMARYKEY,

namecharactervarying(50),

fixed_namecharacter(10)

);

--插入数据

INSERTINTOstrings(id,name,fixed_name)VALUES(1,JohnDoe,JohnDoe);

3日期和时间类型介绍

日期和时间类型用于存储日期和时间数据,包括日期、时间、日期时间和时间间隔。

3.1日期和时间类型

date:存储日期,格式为YYYY-MM-DD。

time:存储时间,格式为HH:MM:SS。

timestamp:存储日期和时间,格式为YYYY-MM-DDHH:MM:SS。

interval:存储时间间隔,可以表示为年、月、日、小时、分钟和秒。

3.2日期和时间类型示例

--创建一个包含日期和时间的表

CREATETABLEevents(

idintegerPRIMARYKEY,

event_datedate,

event_timetime,

event_timestamptimestamp

);

--插入数据

INSERTINTOevents(id,event_date,event_time,event_timestamp)

VALUES(1,2023-01-01,12:00:00,2023-01-0112:00:00);

4布尔类型和枚举类型说明

布尔类型用于存储逻辑值,而枚举类型用于存储一组预定义的字符串值。

4.1布尔类型

boolean:存储true、false和null。

4.2枚举类型

enum:用户定义的枚举类型,例如gender可以定义为male、female和other。

4.3布尔和枚举类型示例

--创建一个枚举类型

CREATETYPEgenderASENUM(male,female,other);

--创建一个包含布尔和枚举类型的表

CREATETABLEusers(

idintegerPRIMARYKEY,

is_activeboolean,

gendergender

);

--插入数据

INSERTINTOusers(id,is_active,gender)VALUES(1,true,male);

5特殊数据类型如数组和JSON

特殊数据类型包括数组、JSON和JSONB,用于存储复杂的数据结构。

5.1数组类型

array:存储相同类型

您可能关注的文档

文档评论(0)

kkzhujl + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档