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 相关文章推荐
PostgreSQL存储过程实用脚本(二):创建函数入门
Apr 05 PostgreSQL
如何使用PostgreSQL进行中文全文检索
May 27 PostgreSQL
通过Qt连接OpenGauss数据库的详细教程
Jun 23 PostgreSQL
浅谈PostgreSQL表分区的三种方式
Jun 29 PostgreSQL
PostgreSQL13基于流复制搭建后备服务器的方法
Jan 18 PostgreSQL
使用PostGIS完成两点间的河流轨迹及流经长度的计算(推荐)
Jan 18 PostgreSQL
Rust 连接 PostgreSQL 数据库的详细过程
Jan 22 PostgreSQL
PostgreSQL并行计算算法及参数强制并行度设置方法
Apr 07 PostgreSQL
PostgreSQL数据库创建并使用视图以及子查询
Apr 11 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
来自phpguru得Php Cache类源码
2010/04/15 PHP
CI框架给视图添加动态数据
2014/12/01 PHP
PHP学习笔记(二):变量详解
2015/04/17 PHP
启用Csrf后POST数据时出现的400错误
2015/07/05 PHP
php7下的filesize函数
2019/09/30 PHP
十个迅速提升JQuery性能让你的JQuery跑得更快
2012/12/10 Javascript
扩展jQuery对象时如何扩展成员变量具体怎么实现
2014/04/25 Javascript
js实现完全自定义可带多级目录的网页鼠标右键菜单方法
2015/02/28 Javascript
JavaScript基础篇(6)之函数表达式闭包
2015/12/11 Javascript
JavaScript_ECMA5数组新特性详解
2016/06/12 Javascript
使用JS实现图片展示瀑布流效果的实例代码
2016/09/12 Javascript
jQuery实现可移动选项的左右下拉列表示例
2016/12/26 Javascript
原生JS下拉加载插件分享
2016/12/26 Javascript
JavaScript Date 知识浅析
2017/01/29 Javascript
详解React-Router中Url参数改变页面不刷新的解决办法
2018/05/08 Javascript
webpack+vue+express(hot)热启动调试简单配置方法
2018/09/19 Javascript
微信公众号平台接口开发 菜单管理的实现
2019/08/14 Javascript
微信小程序中weui用法解析
2019/10/21 Javascript
[05:22]DOTA2 2015国际邀请赛中国区预选赛首日TOP10
2015/05/26 DOTA
python 把数据 json格式输出的实例代码
2016/10/31 Python
Python统计单词出现的次数
2018/04/04 Python
pandas 透视表中文字段排序方法
2018/11/16 Python
Python设计模式之装饰模式实例详解
2019/01/21 Python
HTML5单页面手势滑屏切换原理分析
2017/07/10 HTML / CSS
Steve Madden官网:美国鞋类品牌
2017/01/29 全球购物
彪马日本官网:PUMA日本
2019/01/31 全球购物
工程师自我评价怎么写
2013/09/19 职场文书
考博专家推荐信模板
2013/12/02 职场文书
致跳高运动员加油稿
2014/02/12 职场文书
房产公证书范本
2014/04/10 职场文书
国家机关领导干部民主生活会对照检查材料思想汇报
2014/09/17 职场文书
交通运输局四风问题对照检查材料思想汇报
2014/10/09 职场文书
调解书格式范本
2015/05/20 职场文书
2015年医院保卫科工作总结
2015/07/23 职场文书
护理培训心得体会
2016/01/22 职场文书
flex布局中使用flex-wrap实现换行的项目实践
2022/06/21 HTML / CSS