首页 > 其他分享 >openGauss每日一练(全文检索)

openGauss每日一练(全文检索)

时间:2024-03-30 15:12:50浏览次数:26  
标签:INSERT tsvector 每日 omm 全文检索 tsearch openGauss CREATE pgweb

openGauss 每日一练(全文检索)
本文出处:https://www.modb.pro/db/224179

学习目标
学习 openGauss 全文检索

openGauss 提供了两种数据类型用于支持全文检索。tsvector 类型表示为文本搜索优化的文件格式,tsquery 类型表示文本查询

课后作业
1.用 tsvector @@ tsquery 和 tsquery @@ tsvector 完成两个基本文本匹配
omm=# SELECT 'a fat cat sat on a mat and ate a fat rat'::tsvector @@ 'cat & rat'::tsquery AS RESULT;
result

t
(1 row)

omm=# SELECT 'fat & cow'::tsquery @@ 'a fat cat sat on a mat and ate a fat rat'::tsvector AS RESULT;
result

f
(1 row)

omm=#
2.创建表且至少有两个字段的类型为 text 类型,在创建索引前进行全文检索
omm=# CREATE SCHEMA tsearch;
CREATE TABLE tsearch.pgweb(id int, body text, title text, last_mod_date date);
CREATE SCHEMA
omm=# CREATE TABLE tsearch.pgweb(id int, body text, title text, last_mod_date date);
INSERT INTO tsearch.pgweb VALUES(1, 'China, officially the People''s Republic of China(PRC), located in Asia, is the world''s most populous state.', 'China', '2010-1-1');
CREATE TABLE
omm=# INSERT INTO tsearch.pgweb VALUES(1, 'China, officially the People''s Republic of China(PRC), located in Asia, is the world''s most populous state.', 'China', '2010-1-1');
INSERT INTO tsearch.pgweb VALUES(2, 'America is a rock band, formed in England in 1970 by multi-instrumentalists Dewey Bunnell, Dan Peek, and Gerry Beckley.', 'America', '2010-1-1');
INSERT 0 1
omm=# INSERT INTO tsearch.pgweb VALUES(2, 'America is a rock band, formed in England in 1970 by multi-instrumentalists Dewey Bunnell, Dan Peek, and Gerry Beckley.', 'America', '2010-1-1');
INSERT 0 1
omm=# INSERT INTO tsearch.pgweb VALUES(3, 'England is a country that is part of the United Kingdom. It shares land borders with Scotland to the north and Wales to the west.', 'England','2010-1-1');
INSERT 0 1
omm=#
omm=# SELECT id, body, title FROM tsearch.pgweb WHERE to_tsvector(body) @@ to_tsquery('america');

id | body | title
----+-------------------------------------------------------------------------------------------------------------------------+---------
2 | America is a rock band, formed in England in 1970 by multi-instrumentalists Dewey Bunnell, Dan Peek, and Gerry Beckley. | America
(1 row)

omm=#
3.创建 GIN 索引
omm=# CREATE INDEX pgweb_idx_1 ON tsearch.pgweb USING gin(to_tsvector('english', body));
CREATE INDEX
omm=#
4.清理数据
omm=# drop schema tsearch;
DROP SCHEMA
omm=#

标签:INSERT,tsvector,每日,omm,全文检索,tsearch,openGauss,CREATE,pgweb
From: https://www.cnblogs.com/helloopenGauss/p/18105508

相关文章

  • openGauss每日一练第四天
    openGauss每日一练第四天本文出处:https://www.modb.pro/db/193083学习地址https://www.modb.pro/course/133学习目标学习openGauss创建角色、修改角色属性、更改角色权限和删除角色角色是用来管理权限的,从数据库安全的角度考虑,可以把所有的管理和操作权限划分到不同的角......
  • openGauss每日一练第三天
    openGauss每日一练第三天本文出处:https://www.modb.pro/db/193083学习目标学习openGauss创建数据库、修改数据库属性和删除数据库课后作业1.分别创建名为tpcc1和tpcc2的数据库SQL文本:createdatabasetpcc1;createdatabasetpcc2;\lomm=#createdatabasetpcc1......
  • python每日练(二)
    1:九九乘法表foriinrange(1,10):forjinrange(1,i+1):print("%d*%d=%d"%(i,j,i*j),end='')print()通过两个for循环嵌套使用调用乘法的因子,最后的print()是为了让输出的结果美观,因为print()自带换行的功能。1*1=12*1=22*2=43*1=33*2=63*3=9......
  • MogDB/openGauss 坏块测试-对启动的影响-测试笔记1
    MogDB/openGauss坏块测试-对启动的影响-测试笔记1在UPDATE操作提交后,脏块落盘前kill掉mogdb数据库,然后对UPDATE修改的坏进行以下破坏操作,仍然能够启动数据库,数据未丢失。1、用旧数据文件替换,可以启动2、修改成错误的checksum,可以启动3、数据块修改成错误的lsn,可......
  • 编译安装openGauss 3.0.0
    编译安装openGauss3.0.0环境检查1.1检查OS版本openGauss支持的操作系统:CentOS7.6(x86架构)openEuler-20.03-LTS(aarch64架构)openEuler-20.03-LTS(x86架构)Kylin-V10(aarch64架构)[root@og3~]#cat/etc/redhat-releaseCentOSLinuxrelease7.6.1810(Core)1.2修......
  • MogDB/openGauss学习笔记-获取对象DDL
    MogDB/openGauss学习笔记-获取对象DDL本文出处:https://www.modb.pro/db/399230内置函数omm2=#\df*defListoffunctionsSchema|Name|Resultdatatype|......
  • openGauss 数据库认证机制
    数据库认证机制可获得性本特性自openGauss1.1.0版本开始引入。特性简介提供基于客户端/服务端(C/S)模式的客户端连接认证机制。客户价值加密认证过程中采用单向Hash不可逆加密算法PBKDF2,有效防止彩虹攻击。特性描述openGauss采用基本的客户端连接认证机制,客户端发起连接请......
  • openGauss 数据库指标采集-预测与异常监控
    数据库指标采集、预测与异常监控可获得性本特性自openGauss1.1.0版本开始引入。特性简介本特性是openGauss集成的、可以用于数据库指标采集、预测以及异常监控与诊断的AI工具,是DBMind套间中的一个组件。当前通过兼容Prometheus平台来采集数据库系统的指标,提供Prometheusexpo......
  • openGauss 事件触发器
    事件触发器可获得性本特性自openGauss5.0.0版本开始引入。特性简介支持事件触发器,允许捕获DDL操作并做相应处理。客户价值典型使用场景是:通过事件触发器捕获DDL操作和目标对象,来实现数据同步。特性描述事件触发器支持捕获当前数据库下的ddl操作以及ddl操作的目标对象(事件......
  • openGauss 数据加密存储
    数据加密存储可获得性本特性自openGauss1.1.0版本开始引入。特性简介提供对导入数据的加密存储。客户价值为客户提供加密导入接口,对客户认为是敏感信息的数据进行加密后存储在表内。特性描述openGauss提供加密函数gs_encrypt_aes128()、gs_encrypt()和解密函数gs_decrypt......