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将数据加载到buffer cache中操作方法
Apr 16 PostgreSQL
如何使用PostgreSQL进行中文全文检索
May 27 PostgreSQL
postgres之jsonb属性的使用操作
Jun 23 PostgreSQL
浅谈PostgreSQL表分区的三种方式
Jun 29 PostgreSQL
postgresql 删除重复数据案例详解
Aug 02 PostgreSQL
关于PostgreSQL JSONB的匹配和交集问题
Sep 14 PostgreSQL
PostgreSQL13基于流复制搭建后备服务器的方法
Jan 18 PostgreSQL
PostgreSQL并行计算算法及参数强制并行度设置方法
Apr 07 PostgreSQL
PostgreSQL聚合函数介绍以及分组和排序
Apr 12 PostgreSQL
PostgreSQL出现死锁该如何解决
May 30 PostgreSQL
postgresql之greenplum字符串去重拼接方式
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
php准确计算复活节日期的方法
2015/04/18 PHP
php生成gif动画的方法
2015/11/05 PHP
php实现图片以base64显示的方法
2016/10/13 PHP
PHP严重致命错误处理:php Fatal error: Cannot redeclare class or function
2017/02/05 PHP
javascript入门·对象属性方法大总结
2007/10/01 Javascript
JQuery autocomplete 使用手册
2010/04/01 Javascript
Jqgrid设置全选(选择)及获取选择行的值示例代码
2013/12/28 Javascript
JavaScript获取XML数据附示例截图
2014/03/05 Javascript
jQuery遍历对象、数组、集合实例
2014/11/08 Javascript
移动端JQ插件hammer使用详解
2015/07/03 Javascript
JavaScript实现点击文本自动定位到下拉框选中操作
2016/06/15 Javascript
深入理解JS正则表达式---分组
2016/07/18 Javascript
JS组件系列之使用HTML标签的data属性初始化JS组件
2016/09/14 Javascript
解决同一页面中两个iframe互相调用jquery,js函数的方法
2016/12/12 Javascript
微信小程序 两种滑动方式(横向滑动,竖向滑动)详细及实例代码
2017/01/13 Javascript
JS使用正则表达式找出最长连续子串长度
2017/10/26 Javascript
JavaScript实现音乐自动切换和轮播
2017/11/05 Javascript
JavaScript事件对象event用法分析
2018/07/27 Javascript
VueCli3构建TS项目的方法步骤
2018/11/07 Javascript
跨域解决之JSONP和CORS的详细介绍
2018/11/21 Javascript
JavaScript链式调用原理与实现方法详解
2020/05/16 Javascript
ES6扩展运算符和rest运算符用法实例分析
2020/05/23 Javascript
python实现while循环打印星星的四种形状
2019/11/23 Python
Python 实现Numpy中找出array中最大值所对应的行和列
2019/11/26 Python
彻底搞懂 python 中文乱码问题(深入分析)
2020/02/28 Python
Python语法垃圾回收机制原理解析
2020/03/25 Python
浅谈html5之sse服务器发送事件EventSource介绍
2017/08/28 HTML / CSS
美国半成品食材配送服务商:Home Chef
2018/01/25 全球购物
创建索引时需要注意的事项
2013/05/13 面试题
酒店管理求职信范文
2014/04/06 职场文书
应届大专生自荐书
2014/06/16 职场文书
怀孕辞职信怎么写
2015/02/28 职场文书
2015年爱国卫生月活动总结
2015/03/26 职场文书
《秋天的雨》教学反思
2016/02/19 职场文书
MySQL串行化隔离级别(间隙锁实现)
2022/06/16 MySQL
Spring boot实现上传文件到本地服务器
2022/08/14 Java/Android