ICode9

精准搜索请尝试: 精确搜索
首页 > 数据库> 文章详细

第四章:德哥之PostgreSQL应用开发指南2

2022-01-12 11:31:02  阅读:311  来源: 互联网

标签:德哥 cube PostgreSQL postgres ltree 数据类型 record 第四章 schema


文章目录

1.数据类型、操作符

pg中所有的数据类型
postgres=# select * from pg_type ;
postgres=# \d pg_type;

增加一个表,会增加一个表类型,这是一个复合类型,数据输入输出接口走的是record_in 和record_out
postgres=# \d table1;
postgres=# select * from pg_type where typname = 'table1';
  oid  | typname | typnamespace | typowner | typlen | typbyval | typtype | typcategory | typispreferred | typisdefined | typdelim | typrelid | typelem | typarray | typinput  | typoutput  | typreceive  |   typsend   | typmodin | typ
modout | typanalyze | typalign | typstorage | typnotnull | typbasetype | typtypmod | typndims | typcollation | typdefaultbin | typdefault | typacl
-------+---------+--------------+----------+--------+----------+---------+-------------+----------------+--------------+----------+----------+---------+----------+-----------+------------+-------------+-------------+----------+----
-------+------------+----------+------------+------------+-------------+-----------+----------+--------------+---------------+------------+--------
 17314 | table1  |         2200 |       10 |     -1 | f        | c       | C           | f              | t            | ,        |    17312 |       0 |    17313 | record_in | record_out | record_recv | record_send | -        | -
       | -          | d        | x          | f          |           0 |        -1 |        0 |            0 |               |            |

2.内置数据类型

数值
货币
字符串
字节流:二进制的数据叫字节流,单位Byte,可存1GB
时间
布尔
枚举
平面几何:点线面


网络地址:可以用掩码存一串地址
比特串,比特串单位是bit
全文检索
UUID
XML
JSON
数组
复合类型:record类型

range
域:限制原有数据类型返回
大对象,可存4TB,类似字节流
Itree,树状数据类型
hstore:存若干kv,支持检索,建议用json代替
cube:用于图像向量相似计算

扩展类型
图像:imgsmlr,https://github.com/postgrespro/imgsmlr,类似图像
geometry、geography
轨迹
raster
近似
roaringbitmap:压缩bitmap
pair
扩展插件:eg:datasketches使用近似算法,https://pgxn.org/dist/datasketches/
postgres=# create extension ltree
CASCADE      VERSION      WITH SCHEMA
postgres=# create extension ltree ;
CREATE EXTENSION
postgres=# \dT ltree;
      List of data types
 Schema | Name  | Description
--------+-------+-------------
 public | ltree |
(1 row)

a.b的层级比a.b.c.d.e的层级要高
postgres=# select ltree 'a.b.c.d' <@ ltree 'a.b';
 ?column?
----------
 t
(1 row)
postgres=# select ltree 'a.b.c.d' @> ltree 'a.b';
 ?column?
----------[添加链接描述](https://www.postgresql.org/docs/11/cube.html)
 f
(1 row)

2.数据库对象

SQL Commands

CREATE DATABASE — create a new database
把业务数据放到一个databse,并用不同SCHEMA来区分,公用的schema放在public里面(public也是schema的一个名字);
不同的schema可以创建同名的表
CREATE SCHEMA — define a new schema
每个表空间对应一个文件系统的目录,即物理存储位置
CREATE TABLESPACE — define a new tablespace


标签:德哥,cube,PostgreSQL,postgres,ltree,数据类型,record,第四章,schema
来源: https://blog.csdn.net/u011436427/article/details/122447835

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有