国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁(yè) > 數(shù)據(jù)庫(kù) > PostgreSQL > 正文

postgresql中的ltree類型使用方法

2020-01-31 15:20:34
字體:
來(lái)源:轉(zhuǎn)載
供稿:網(wǎng)友

postgresql有很多比較妖的數(shù)據(jù)類型,ltree算一個(gè)。

簡(jiǎn)介

ltree是Postgresql的一個(gè)擴(kuò)展類型 http://www.sai.msu.su/~megera...,在解決樹形結(jié)構(gòu)的數(shù)據(jù)存儲(chǔ)上使用。

查看是否安裝了插件

select * from pg_extension where extname = 'ltree';

定義

字段的格式為:L1.L2.L3.L4.L5.L6.....

標(biāo)簽是一系列字母數(shù)字字符和下劃線A-Za-z0-9_, 標(biāo)簽長(zhǎng)度必須小于256個(gè)字節(jié)。標(biāo)簽路徑是由點(diǎn)分隔的零個(gè)或多個(gè)標(biāo)簽的序列,例如L1.L2.L3,表示從分層樹的根到特定節(jié)點(diǎn)的路徑。 標(biāo)簽路徑的長(zhǎng)度必須小于65Kb,但最好保持在2Kb以下。

查詢

創(chuàng)建臨時(shí)表:

create table tmp.ltree_table(name varchar, path ltree);

寫入測(cè)試數(shù)據(jù)

insert into tmp.ltree_table values ('小明','北京.東城.小明');insert into tmp.ltree_table values ('小剛','北京.西城.小剛');insert into tmp.ltree_table values ('小紅','北京.南城.小紅');insert into tmp.ltree_table values ('小小明','北京.東城.小明.小小明');insert into tmp.ltree_table values ('小明明','北京.東城.小明.小明明');insert into tmp.ltree_table values ('小小紅','北京.東城.小紅.小小紅');insert into tmp.ltree_table values ('小紅紅','北京.東城.小紅.小紅紅');

查詢寫入的數(shù)據(jù)

 小明   | 北京.東城.小明
 小剛   | 北京.西城.小剛
 小紅   | 北京.南城.小紅
 小小明 | 北京.東城.小明.小小明
 小明明 | 北京.東城.小明.小明明
 小小紅 | 北京.南城.小紅.小小紅
 小紅紅 | 北京.南城.小紅.小紅紅

結(jié)構(gòu)樹如下:

查詢所有的人和他的孩子的對(duì)應(yīng)關(guān)系:

select c.name, s.name from tmp.ltree_table s join (select path ,name from tmp.ltree_table ) c on s.path <@ c.path and s.name <> c.name;

 小明 | 小小明
 小明 | 小明明
 小紅 | 小小紅
 小紅 | 小紅紅

查詢覆蓋的所有的區(qū)域:

select subltree(path,1,2) from tmp.ltree_table;

 東城
 西城
 南城
 東城
 東城
 南城
 南城

查詢所有南城的人:

select distinct s.name from tmp.ltree_table s where subltree(s.path,1,2) = '南城';

 小小紅
 小紅紅
 小紅

查詢路徑長(zhǎng)度:

select s.name,nlevel(s.path) from tmp.ltree_table s;

 小明   |      3
 小剛   |      3
 小紅   |      3
 小小明 |      4
 小明明 |      4
 小小紅 |      4
 小紅紅 |      4

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)武林網(wǎng)的支持。

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表

圖片精選

主站蜘蛛池模板: 新安县| 武山县| 红原县| 那曲县| 淳安县| 长白| 邯郸市| 历史| 竹北市| 大方县| 新丰县| 阿克| 田林县| 五家渠市| 怀柔区| 浦县| 海门市| 民乐县| 台中县| 汽车| 绩溪县| 玉山县| 华安县| 保康县| 海门市| 湾仔区| 浪卡子县| 门源| 上栗县| 铜川市| 临漳县| 马龙县| 册亨县| 漳平市| 琼海市| 彰化市| 太湖县| 天镇县| 房山区| 岗巴县| 阜康市|