PostgreSQL解析URL的方法


Posted in PostgreSQL onAugust 02, 2021

尽管PostgreSQL中支持大量的数据类型,但是对于URL似乎并没有一个相应的类型能够去存储。那么对于URL的数据我们在数据库中要怎么去处理呢?

首先还是需要看你要存储的URL数据是用来干嘛的,如果仅仅只是为了在以后查询的时候打印输出,那么用varchar或者text之类的类型不是就可以了吗?

但是有的时候我们对于这些URL数据并不仅仅是简单的查询,我们可能希望通过这些URL能够查询一些额外的信息,例如URL的使用的协议、主机名等等。这里我们便可以使用ts_debug函数来进行解析了。

函数ts_debug允许简单地测试一个文本搜索配置。

ts_debug([ config regconfig, ] document text,
         OUT alias text,
         OUT description text,
         OUT token text,
         OUT dictionaries regdictionary[],
         OUT dictionary regdictionary,
         OUT lexemes text[])
         returns setof record

ts_debug为解析器在文本中标识的每一个记号返回一行。被返回的列是:

  • alias text : 记号类型的短名称
  • description text :记号类型的描述
  • token text : 记号的文本
  • dictionaries regdictionary[] : 配置为这种记号类型选择的词典
  • dictionary regdictionary : 识别该记号的词典,如果没有词典能识别则为NULL
  • lexemes text[] :
  • 识别该记号的词典产生的词位,如果没有词典能识别则为NULL;一个空数组({})表示该记号被识别为一个停用词

因此我们便可以通过下面的方式来对URL进行解析:

bill@bill=>SELECT
bill-#     alias
bill-#     ,description
bill-#     ,token
bill-# FROM ts_debug('https://blog.csdn.net/weixin_39540651');
  alias   |  description  |             token
----------+---------------+-------------------------------
 protocol | Protocol head | https://
 url      | URL           | blog.csdn.net/weixin_39540651
 host     | Host          | blog.csdn.net
 url_path | URL path      | /weixin_39540651
(4 rows)

参考链接:

https://stackoverflow.com/questions/41633436/datatype-for-a-url-in-postgresql
http://www.postgres.cn/docs/13/textsearch-debugging.html#TEXTSEARCH-CONFIGURATION-TESTING

到此这篇关于PostgreSQL解析URL的方法的文章就介绍到这了,更多相关PostgreSQL解析URL内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

PostgreSQL 相关文章推荐
Centos环境下Postgresql 安装配置及环境变量配置技巧
May 18 PostgreSQL
postgres之jsonb属性的使用操作
Jun 23 PostgreSQL
postgresql使用filter进行多维度聚合的解决方法
Jul 16 PostgreSQL
postgresql 删除重复数据案例详解
Aug 02 PostgreSQL
PostgreSQL自动更新时间戳实例代码
Nov 27 PostgreSQL
Oracle配置dblink访问PostgreSQL的操作方法
Mar 21 PostgreSQL
PostgreSQL事务回卷实战案例详析
Mar 25 PostgreSQL
PostgreSQL 插入INSERT、删除DELETE、更新UPDATE、事务transaction
Apr 12 PostgreSQL
postgreSQL数据库基础知识介绍
Apr 12 PostgreSQL
PostgreSQL之连接失败的问题及解决
May 08 PostgreSQL
postgresql使用filter进行多维度聚合的解决方法
Jul 16 #PostgreSQL
浅谈PostgreSQL表分区的三种方式
通过Qt连接OpenGauss数据库的详细教程
postgres之jsonb属性的使用操作
Jun 23 #PostgreSQL
postgresql无序uuid性能测试及对数据库的影响
Jun 11 #PostgreSQL
如何使用PostgreSQL进行中文全文检索
May 27 #PostgreSQL
PostgreSQL通过oracle_fdw访问Oracle数据的实现步骤
You might like
预告映像公开!第1章续篇剧场版动画《Princess Principal Crown Handler》4月10日上映!
2020/03/06 日漫
php防盗链的常用方法小结
2010/07/02 PHP
求帮忙修改个php curl模拟post请求内容后并下载文件的解决思路
2015/09/20 PHP
javascript中typeof的使用示例
2013/12/19 Javascript
JQuery插件jcarousellite的参数中文说明
2015/05/11 Javascript
一系列Bootstrap导航条使用方法分享
2016/04/29 Javascript
微信支付 JS API支付接口详解
2016/07/11 Javascript
关于动态执行代码(js的Eval)实例详解
2016/08/15 Javascript
微信小程序 视图容器组件的详解及实例代码
2017/01/19 Javascript
推荐三款不错的图片压缩上传插件(webuploader、localResizeIMG4、LUploader)
2017/04/21 Javascript
vscode中vue-cli项目es-lint的配置方法
2018/07/30 Javascript
微信小程序分享海报生成的实现方法
2018/12/10 Javascript
微信小程序一周时间表功能实现
2019/10/17 Javascript
vue实现购物车结算功能
2020/06/18 Javascript
解决Echarts2竖直datazoom滑动后显示数据不全的问题
2020/07/20 Javascript
Element-ui el-tree新增和删除节点后如何刷新tree的实例
2020/08/31 Javascript
uniapp实现可以左右滑动导航栏
2020/10/21 Javascript
react+antd 递归实现树状目录操作
2020/11/02 Javascript
[02:50]2014DOTA2 TI预选赛预选赛 大神专访第一弹!
2014/05/21 DOTA
pygame学习笔记(5):游戏精灵
2015/04/15 Python
实例详解python函数的对象、函数嵌套、名称空间和作用域
2019/05/31 Python
深入了解Python在HDA中的应用
2019/09/05 Python
python实现简易淘宝购物
2019/11/22 Python
屏蔽Django admin界面添加按钮的操作
2020/03/11 Python
利用Python实现朋友圈中的九宫格图片效果
2020/09/03 Python
汤米巴哈马官方网站:Tommy Bahama
2017/05/13 全球购物
纽约海:Sea New York
2018/11/04 全球购物
美国美食礼品篮网站:Gourmet Gift Baskets
2019/12/15 全球购物
经济实惠的名牌太阳镜和眼镜:Privé Revaux
2021/02/07 全球购物
汽车检测与维修个人求职信
2013/09/24 职场文书
如何进行有效的自我评价
2013/09/27 职场文书
三下乡个人总结
2015/03/04 职场文书
政府会议通知范文
2015/04/15 职场文书
三八节活动简报
2015/07/20 职场文书
5种 JavaScript 方式实现数组扁平化
2021/10/05 Javascript
基于redis+lua进行限流的方法
2022/07/23 Redis