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
Centos环境下Postgresql 安装配置及环境变量配置技巧
May 18 PostgreSQL
PostgreSQL通过oracle_fdw访问Oracle数据的实现步骤
May 21 PostgreSQL
postgresql无序uuid性能测试及对数据库的影响
Jun 11 PostgreSQL
PostgreSQL13基于流复制搭建后备服务器的方法
Jan 18 PostgreSQL
PostGIS的安装与入门使用指南
Jan 18 PostgreSQL
Oracle配置dblink访问PostgreSQL的操作方法
Mar 21 PostgreSQL
PostgreSQL事务回卷实战案例详析
Mar 25 PostgreSQL
postgreSQL数据库基础知识介绍
Apr 12 PostgreSQL
PostgreSQL逻辑复制解密原理解析
Sep 23 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
php5 non-thread-safe和thread-safe这两个版本的区别分析
2010/03/13 PHP
PHP中使用asort进行中文排序失效的问题处理
2014/08/18 PHP
PHP编程中尝试程序并发的几种方式总结
2016/03/21 PHP
使用vs code编辑调试php配置的方法
2019/01/29 PHP
拉动滚动条加载数据的jquery代码
2012/05/03 Javascript
JS编程小常识很有用
2012/11/26 Javascript
javascript alert乱码的解决方法
2013/11/05 Javascript
JS实现控制表格行文本对齐的方法
2015/03/30 Javascript
js实现拖拽效果(构造函数)
2015/12/14 Javascript
JS中使用变量保存arguments对象的方法
2016/06/03 Javascript
Vue-router路由判断页面未登录跳转到登录页面的实例
2017/10/26 Javascript
jquery分页插件pagination使用教程
2018/10/23 jQuery
js实现星星打分效果
2020/07/05 Javascript
python插入排序算法的实现代码
2013/11/21 Python
常见的在Python中实现单例模式的三种方法
2015/04/08 Python
在Python的Django框架中实现Hacker News的一些功能
2015/04/17 Python
Python设计模式编程中Adapter适配器模式的使用实例
2016/03/02 Python
详解Python中heapq模块的用法
2016/06/28 Python
Python中的id()函数指的什么
2017/10/17 Python
值得收藏,Python 开发中的高级技巧
2018/11/23 Python
python PrettyTable模块的安装与简单应用
2019/01/11 Python
Python supervisor强大的进程管理工具的使用
2019/04/24 Python
在Qt5和PyQt5中设置支持高分辨率屏幕自适应的方法
2019/06/18 Python
详解用python计算阶乘的几种方法
2019/08/14 Python
基于Canvas+Vue的弹幕组件的实现
2019/07/23 HTML / CSS
前端H5 Video常见使用场景简介
2020/08/21 HTML / CSS
英国的一家创新礼品和小工具零售商:Menkind
2019/08/24 全球购物
保送生自荐信范文
2013/10/06 职场文书
应聘自荐书
2013/10/08 职场文书
物流专业大学生职业生涯规划书范文
2014/01/15 职场文书
语文教学随笔感言
2014/02/18 职场文书
《胖乎乎的小手》教学反思
2014/02/26 职场文书
运动会口号16字
2014/06/07 职场文书
讲座开场白台词和结束语
2015/05/29 职场文书
校园文化艺术节开幕词
2016/03/04 职场文书
Java字符串逆序方法详情
2022/03/21 Java/Android