日韩小视频-日韩久久一区二区三区-日韩久久一级毛片-日韩久久久精品中文字幕-国产精品亚洲精品影院-国产精品亚洲欧美云霸高清

下載吧 - 綠色安全的游戲和軟件下載中心

軟件下載吧

當前位置:軟件下載吧 > 技術開發 > 數據庫 > PostgreSQL?數組類型操作使用及特點詳解

PostgreSQL?數組類型操作使用及特點詳解

時間:2024-03-09 11:50作者:下載吧人氣:22

PostgreSQL 數組類型使用詳解

可能大家對 PostgreSQL這個關系型數據庫不太熟悉,因為大部分人最熟悉的,公司用的最多的是 MySQL

我們先對PostgreSQL數據庫 (下面簡稱 PG)簡單的介紹一下,以后有機會,再單獨寫一篇專門介紹pgSql的文章

The World's Most Advanced Open Source Relational Database

這是PG官網對自己的介紹,是的,你沒有看錯,“世界上最先進的開源關系型數據庫”。一段嚴重違反我國廣告法的話,上一個敢那么叫囂的技術是PHP,“世界上最好的語言”,然后這句話就成了碼農界最廣為人知的梗,存在于各種笑料中。

不過PG并沒有因為這樣明目張膽地自吹自擂而遭到什么抨擊或調侃,事實上,無論在務實的碼農界,抑或是講究章法的學術界,人們對PG都是贊許有加,PG是完全當得起這句話的。

下面列出一些PostgreSQL的特點

  • PostgreSQL是一種功能非常齊全關系型數據庫,由加州大學計算機系開發
  • PostgreSQL開源協議是類BSD的自有協議 ,這是一種非常友好的協議,不論是商用還是自用,或者修改代碼再起個名拿來賣錢,都沒有任何風險
  • PostgreSQL支持的數據類型非常多,除了常用的,還有枚舉類型, 幾何類型,UUID類型  , json類型 , 數組類型 等,其中數組類型 也是本篇文章的目的,介紹其中數組類型的使用
  • PostgreSQL 成立時對標的數據庫是 Oracle數據庫,所有 PostgreSQL 的功能和性能是非常強的。
  • PostgreSQL 對復雜SQL的執行,要好于MySql
  • ………………

還有很多的特性,這里只簡單的寫幾個,上面的幾個特點也是我非常在意的,之所 www.helloworld.net 此次改版把Mysql換成了PostgreSQL ,就是有這些原因。

之前很多人問過,hellworld開發者社區 改版用到了哪些技術棧,其中之一,就是把 Mysql 換成了 PostgreSQL

在改版的過程中,所有的表全部重新設計,這對于后端來說,是一個極其需要勇氣的決定,好在我們堅持下來了

在改的過程中,其中有這樣一個場景:

一篇博客,有多個標簽 ,比如 一個博客,有多線程, 并發 , 線程池 這三個標簽

對于這樣的需求,我們可以分析一下

  • 一篇博客,有多個標簽
  • 一個標簽,也可有對應多篇博客

這樣就形成了 多對多 的關系,建表的話,就會有一張關聯表,大部分會想到這樣建表

博客表: blog

標簽表: tag

標簽博客表: tag_blog

其中各表的字段,如下(簡單起見,只列出最少的列):

blog 表:

  • id 數字類型,博客的 id, 自增長的主鍵
  • title 字符串類型,博客的標題

tag表:

  • id 數字類型, 標簽的 id , 自增長的主鍵
  • name 字符串類型,標簽的名字

tag_blog

  • id 數字類型, 自增長的主鍵
  • tag_id 標簽 id (對應 tag 表中的 id )
  • blog_id 博客id (對應 blog 表中的 id )

上面這個博客標簽需求,需要 3 張表,我們知道,PostgreSQL 的列的類型是支持數組類型

我們是不是可以優化一下上面的需求,把 3 張表變成 1 張表

只保留一張 blog 表,在 blog 表中增加一列 tags , 類似就是 text[ ]

新的博客表字段如下:

blog表:

  • id 數字類型(bigint),博客的 id, 自增長的主鍵
  • title 字符串類型(text ),博客的標題
  • tags 字符串數組類型(text[ ] )

為了方便大家測試,建表SQL 如下

CREATE TABLE IF NOT EXISTS public.blog
(
id bigint NOT NULL DEFAULT nextval(‘blog_id_seq’::regclass),
title text COLLATE pg_catalog.”default”,
tags text[] COLLATE pg_catalog.”default”,
CONSTRAINT blog_pkey PRIMARY KEY (id)
)
TABLESPACE pg_default;
ALTER TABLE IF EXISTS public.blog
OWNER to postgres;
標簽[db:關鍵字]

相關下載

查看所有評論+

網友評論

網友
您的評論需要經過審核才能顯示

熱門閱覽

最新排行

公眾號

主站蜘蛛池模板: 在线观看久草视频 | 在线看片不卡 | 久久精品一区二区三区不卡牛牛 | 国产人人插 | 成人高清视频在线观看 | 72种姿势欧美久久久久大黄蕉 | 一级特黄特黄的大片免费 | 日本精品视频在线播放 | 全午夜免费一级毛片 | 男女牲高爱潮免费视频男女 | 亚洲欧美日本国产综合在线 | 国产亚洲精品久久久久久久 | 久久精品国产91久久综合麻豆自制 | 国产高中生粉嫩无套第一次 | 精品一区二区三区高清免费不卡 | 91精品国产91久久久久 | 五月色婷婷综合开心网4438 | 久久99久久99精品免观看 | 91成人国产福利 | 久久在线播放 | 模特三级在线观看 | 亚洲成人tv| 国产亚洲精品久久久久久久久激情 | 99视频九九精品视频在线观看 | 亚洲精选在线观看 | 亚洲最大网址 | 亚洲不卡在线观看 | 欧美亚洲激情视频 | 久久免费视频1 | 高清欧美日本视频免费观看 | 成人精品一区二区三区 | 日本免费毛片 | 91成人爽a毛片一区二区 | 一本色综合 | 亚洲国产精品欧美日韩一区二区 | 国产成人福利视频网站 | 国产一区二区精品久久91 | 国产精品久久久久久久久岛 | 日韩国产成人精品视频人 | 免费看岛国视频在线观看 | 亚洲网站www |