PostgreSql 数据类型

news/2024/7/9 20:43:49 标签: postgresql, 数据库

一、数据类型表

分类名称说明与其他数据库的对比
布尔类型pg支持sql标准的boolean数据类型与mysql中的bool、boolean类型相同,占用1字节存储空间
数值类型2字节的smallint、4字节的integer、8字节的bigint、精确类型的小数numeric、非精确的浮点小数real和double precision、自增序列类型serial,bigserial、8字节的货币money无mysql中的unsigned整数类型,无mysql中1字节的tinyint整数类型和3字节的mediumint整数类型。
字符类型varchar(n)、chat(n)、text3种类型pg中的varchar(n)最大可以存1GB,mysql中的varchar(n)最大只能是64kb,pg中的text相当于mysql中的longtext
二进制数据类型只有一种bytea类型对应mysql中的blob和longblob类型
位串类型由1和0组成的字符串,有bit(n),bit varying(n)两种类型mysql也支持此类型,不过pg可以支持更长的bit位,最长可支持83886080个bit位
日期和时间类型有date、time、timestamppg中可以精确到秒以下,如毫秒,mysql 5.6也可以精确到毫秒,不过日期时间范围与 mysql 差异较大
枚举类型枚举类型是一个包含一系列有序静态值的集合的数据类型,相当于某些编程语言中的enum类型pg使用枚举类型需要先使用create type 语句创建该类型,mysql中也有枚举类型(enum)
几何类型点(point)、直线(line)、线段(lseg)、路径(path)、多边形(polygon)、圆(cycle)等类型pg中特有的类型,其他数据库中一般没有此类型
网络地址类型cidr、inet、macaddrpg中特有的类型,其他数据库中一般没有此类型
数组类型可以存储一个数组pg中特有的类型,其他数据库中一般没有此类型
复合类型可以把已有的简单类型组合成用户自定义的类型,如C语言中的结构体对应其他数据库的自定义类型
xml类型可以存储xml数据的类型N/A
json/jsonb类型可以存储json数据的类型N/A
range类型范围类型,可以存储范围数据其他数据库中无此类型
对象标识符类型pg内部表示对象的类型,如oid类型、regproc类型、regclass类型等N/A
伪类型伪类型不能作为字段的数据类型,但它可以用于声明函数的参数或结果的类型,有any、anyarray、anyelement、cstring、internal、language、handler、record、trigger、void、opaque等10种类型N/A
其他类型不易分类的类型放到这里,如uuid类型、pg_lsn类型等N/A

二、常用的两种类型转换方式

select cast('5' as int),cast('2023-06-25' as date);
select cast(department_id as varchar),department_name from dept;

select '5'::int,'2023-06-25'::date;
select department_id::varchar,department_name from dept;

三、常用的转换函数及操作符

布尔类型操作符:https://xiaosonggong.blog.csdn.net/article/details/131416704
数学函数及操作符:https://xiaosonggong.blog.csdn.net/article/details/131416741
字符串函数及操作符:https://blog.csdn.net/songyundong1993/article/details/131416803?spm=1001.2014.3001.5501


http://www.niftyadmin.cn/n/473469.html

相关文章

linux 查看ip地址 安装ifconfig

在linux中,查看ip一般用ifconfig。但有时会报错找不到命令。这时候可以用 ip addr show。 ifconfigip addr show net-tools包 ifconfig找不到,通常是因为还没安装,由于最小化安装的centOS。缺少net-tools包。net-tools 这个包里有ifconfig…

Android实现拨打电话功能

Android实现拨打电话功能 先上UI效果图点击联系博主拒绝权限同意权限直接拨号 跳转到拨号界面跳转到拨号界面 同时附带号码 代码实现AndroidManifest.xml中添加权限点击联系博主判断是否有拨号权限申请权限回调直接拨号跳转到拨号界面跳转到拨号界面 同时附带号码 完整代码Main…

DSL查询分类与全文检索查询

DSL查询分类 Elasticsearch提供了基于JSON的DSL(Domain Specific Language)来定义查询。常见的查询类型包括: 查询所有:查询出所有数据,一般测试用。例如:match_all全文检索(full text&#x…

软件接口测试是什么?有哪些好用的接口测试工具?

在软件开发中,接口是不可避免的。软件接口测试是一种验证应用程序接口是否按照设计规范进行交互和协作的测试方法。接口测试是将模块之间的接口连接在一起以进行完整系统测试的关键部分。 当软件开发过程中不同模块之间需要数据交互,采用接口协议来实现…

Nuxt3 seo robots.txt sitemap.xml设置

先看效果 首页-高情商恋爱聊天回复话术神器 - 嗨撩高情商恋爱聊天回复话术神器-免费 背景:nuxt3打包部署后,默认的端口是3000,在linux上使用80转发到3000,一下子不懂怎么设置robots文件,传统的文件一般是放在nginx的…

股票基本面分析方法综述

文章目录 宏观经济分析行业分析从国家政策方向看一个行业的前景看行业所处阶段及规模行业集中度及该公司在行业的市场地位工具网站 公司情况(微观)分析公司基本情况分析业务分析财务分析进行财务分析一定要结合行业资产负债表分析利润表分析工具网站 公司…

ClickHouse部署系列1: ZooKeeper集群部署

ZooKeeper集群部署 ClickHouse分布式集群方案建立标准的ZK的目录使用规范副本的设置的建议机器选择的建议ClickHouse的分布式高可用的架构方案 在k8s集群上部署ZooKeeperZooKeeper简介ZooKeeper部署安装创建manifest文件部署install ClickHouse分布式集群方案 这两天在调研cli…

Vue3学习(四)服务器部署

注意后端SpringBoot需要提前安装Java1.8的环境和Mysql5.7的数据库 SpringBoot 打包后Jar包需要配置数据库 application.yml 文件 配置服务器数据库的IP和密码 ifconfig 查看内网IP,然后配置。 Vue配置 .env.prod VITE_ENV prod VITE_BASE_URL http://qing.vu…