在PostgreSQL中使用ltree处理层次结构数据的方法( 三 )

  
$ SELECT user_id, path FROM comments WHERE path ~ ‘0001.0003.*{1}’ ORDER by path;  
 user_id |  path  
———+—————-  
  8 | 0001.0003.0001  
  9 | 0001.0003.0002  
(2 rows)  
   
为parent ‘0001.0003’找到所有的childrens,见下:  
$ SELECT user_id, path FROM comments WHERE path ~ ‘0001.0003.*’ ORDER by path;  
 user_id |   path  
———+————————–  
  6 | 0001.0003  
  8 | 0001.0003.0001  
  9 | 0001.0003.0001.0001  
  9 | 0001.0003.0001.0002  
  9 | 0001.0003.0001.0003  
  9 | 0001.0003.0002  
  11 | 0001.0003.0002.0001  
  2 | 0001.0003.0002.0002  
  7 | 0001.0003.0002.0002.0001  
  20 | 0001.0003.0002.0002.0002  
  31 | 0001.0003.0002.0002.0003  
  22 | 0001.0003.0002.0002.0004  
  34 | 0001.0003.0002.0002.0005  
  22 | 0001.0003.0002.0002.0006  
  5 | 0001.0003.0002.0003  
(15 rows)  
   
为children ‘0001.0003.0002.0002.0005’找到parent:  
$ SELECT user_id, path FROM comments WHERE path = subpath(‘0001.0003.0002.0002.0005’, 0, -1) ORDER by path;  
 user_id |  path  
———+———————  
  2 | 0001.0003.0002.0002  
(1 row)  
如果你的路径不是唯一的,你会得到多条记录 。  
文章来源:脚本之家  
来源地址:https://www.jb51.net/article/208595.htm  
【在PostgreSQL中使用ltree处理层次结构数据的方法】申请创业报道,分享创业好点子 。,共同探讨创业新机遇!  


特别声明:本站内容均来自网友提供或互联网,仅供参考,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。