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将数据加载到buffer cache中操作方法
Apr 16 PostgreSQL
postgresql无序uuid性能测试及对数据库的影响
Jun 11 PostgreSQL
postgresql 删除重复数据案例详解
Aug 02 PostgreSQL
基于PostgreSQL/openGauss 的分布式数据库解决方案
Dec 06 PostgreSQL
PostgreSQL13基于流复制搭建后备服务器的方法
Jan 18 PostgreSQL
Rust 连接 PostgreSQL 数据库的详细过程
Jan 22 PostgreSQL
PostgreSQL事务回卷实战案例详析
Mar 25 PostgreSQL
PostgreSQL数据库去除重复数据和运算符的基本查询操作
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
php类的扩展和继承用法实例
2015/06/20 PHP
PHP基于文件存储实现缓存的方法
2015/07/20 PHP
用javascript操作xml
2006/11/04 Javascript
jquery select选中的一个小问题
2009/10/11 Javascript
Javascript中的this绑定介绍
2011/09/22 Javascript
javascript陷阱 一不小心你就中招了(字符运算)
2013/11/10 Javascript
javascript中的return和闭包函数浅析
2014/06/06 Javascript
无限树Jquery插件zTree的常用功能特性总结
2014/09/11 Javascript
JavaScript分秒倒计时器实现方法
2015/02/02 Javascript
JavaScript显示表单内元素数量的方法
2015/04/02 Javascript
jQuery寻找n以内完全数的方法
2015/06/24 Javascript
jquery中的工具使用方法$.isFunction, $.isArray(), $.isWindow()
2015/08/09 Javascript
jQuery的Ajax用户认证和注册技术实例教程(附demo源码)
2015/12/08 Javascript
php基于redis处理session的方法
2016/03/14 Javascript
jQuery Collapse1.1.0折叠插件简单使用
2017/08/28 jQuery
jQuery实现table表格信息的展开和缩小功能示例
2018/07/21 jQuery
JavaScript实现简单动态表格
2020/12/02 Javascript
python中查找excel某一列的重复数据 剔除之后打印
2013/02/10 Python
Django实现图片文字同时提交的方法
2015/05/26 Python
python实现DES加密解密方法实例详解
2015/06/30 Python
python清除字符串里非字母字符的方法
2015/07/02 Python
python中的格式化输出用法总结
2016/07/28 Python
Python实现二维数组按照某行或列排序的方法【numpy lexsort】
2017/09/22 Python
python模块hashlib(加密服务)知识点讲解
2019/11/25 Python
Python数据可视化:饼状图的实例讲解
2019/12/07 Python
python手机号前7位归属地爬虫代码实例
2020/03/31 Python
Sneaker Studio罗马尼亚网站:购买运动鞋
2018/11/04 全球购物
Vrbo西班牙:预订您的度假公寓(公寓、乡村房屋…)
2020/04/27 全球购物
计算机操作自荐信
2013/12/07 职场文书
竞选演讲稿范文
2013/12/28 职场文书
安全生产责任书范本
2014/04/15 职场文书
群众路线专项整治方案
2014/10/27 职场文书
个人售房合同协议书
2016/03/21 职场文书
李白经典诗之一:全文无一“月”字,却句句有月
2019/07/12 职场文书
深入理解以DEBUG方式线程的底层运行原理
2021/06/21 Java/Android
JavaScript架构搭建前端监控如何采集异常数据
2022/06/25 Javascript