设为首页 - 加入收藏 ASP站长网(Aspzz.Cn)- 科技、建站、经验、云计算、5G、大数据,站长网!
热搜: 数据 创业者 手机
当前位置: 首页 > 站长学院 > MySql教程 > 正文

PG数据类型总结,你知道几个?

发布时间:2019-11-12 14:09 所属栏目:115 来源:波波说运维
导读:【线上直播】11月21日晚8点贝壳技术总监侯圣文《数据安全之数据库安全黄金法则》 概述 PG的数据类型还是有点多的,为了避免写成博客,所以分成了两部分来做介绍,下面一起来看看吧~ 一、查看当前数据库的数据类型 二、数值类型 1、列表 数值类型由两个字节
【线上直播】11月21日晚8点贝壳技术总监侯圣文《数据安全之数据库安全黄金法则》

 PG数据类型总结,你知道几个?

概述

PG的数据类型还是有点多的,为了避免写成博客,所以分成了两部分来做介绍,下面一起来看看吧~

一、查看当前数据库的数据类型

史上最全面的PG数据类型总结,值得收藏

二、数值类型

1、列表

数值类型由两个字节,4字节和8字节的整数,4字节和8字节的浮点数和可选精度的小数。下表列出了可用的类型。

史上最全面的PG数据类型总结,值得收藏
史上最全面的PG数据类型总结,值得收藏

2、数学函数

函数名称作用描述mod()按模取余round()四舍五入ceil()向上取整floor()向下取整

史上最全面的PG数据类型总结,值得收藏

三、字符类型

1、列表

下表列出了可在PostgreSQL通用字符类型。

史上最全面的PG数据类型总结,值得收藏

2、字符类型函数

史上最全面的PG数据类型总结,值得收藏

四、日期/时间类型

1、列表

PostgreSQL支持全套的SQL日期和时间类型,列于下表。根据公历日期计算。在这里,所有的类型有日期类型以外,其分辨率为day1微秒/14位的解析度。

史上最全面的PG数据类型总结,值得收藏

2、时间/日期常用函数

史上最全面的PG数据类型总结,值得收藏

五、数组类型

PostgreSQL的机会定义为可变长度的多维数组的列一个表。任何内置或用户定义的基本类型数组,枚举类型,或者可以创建复合型。

1、数组类型定义

--数组类型可以声明为:CREATE TABLE monthly_savings ( name text, saving_per_quarter integer[], scheme text[][]); --或通过使用关键字“ARRAY”:CREATE TABLE monthly_savings ( name text, saving_per_quarter integer ARRAY[4], scheme text[][]);

2、插入值

数组的值可以插入一个文本常量,内附大括号内的元素值,并用逗号将它们隔开。

INSERT INTO monthly_savings VALUES ('Manisha', '{20000, 14600, 23500, 13250}', '{{"FD", "MF"}, {"FD", "Property"}}');

3、访问数组

用于访问阵列的一个例子如下所示。下面的命令将选择人员,他们存储在第二,第四个。

SELECT name FROM monhly_savings WHERE saving_per_quarter[2] > saving_per_quarter[4];

4、修改数组

--修改数组的一个例子如下所示。UPDATE monthly_savings SET saving_per_quarter = '{25000,25000,27000,27000}'WHERE name = 'Manisha'; --或数组表达式语法:UPDATE monthly_savings SET saving_per_quarter = ARRAY[25000,25000,27000,27000]WHERE name = 'Manisha';

5、寻找ARRAYS

--搜索数组的一个例子如下所示。SELECT * FROM monthly_savings WHERE saving_per_quarter[1] = 10000 ORsaving_per_quarter[2] = 10000 ORsaving_per_quarter[3] = 10000 ORsaving_per_quarter[4] = 10000; --如果数组的大小是已知的上述搜索方法都可以使用。否则,下面的例子说明如何时要搜索的大小是不知道的。SELECT * FROM monthly_savings WHERE 10000 = ANY (saving_per_quarter);

6、数组函数

-- 追加(追加末尾),移除(指定值)select array_append(array[1,2],3),array_remove(array[1,2],2);-- 获取维度SELECT array_ndims(array[1,2]);

【编辑推荐】

  1. 数据库连接配置策略和实践指南
  2. 完整的数据库MySQL规范
  3. MySQL数据库基本增删改查操作总结
  4. 37 个MySQL数据库小知识,为面试做准备
  5. 数据库安全能力:安全威胁TOP5
【责任编辑:武晓燕 TEL:(010)68476606】
点赞 0

(编辑:ASP站长网)

    网友评论
    推荐文章
      热点阅读