返回首页

gbase数据、南大通用产品文档:GBase8a

更新日期:2024年09月11日

连接8aMPP 集群和UP 集群字符集是GBK 的数据库乱码..... 383

本章是基于编写 SELECT 语句中介绍的概念构建的。它提供了更高级类型的 SELECT 语
句(用来查询关系数据库)的样本语法和结果。本章提供了以下资料:

介绍了 GROUP BY 和 HAVING 子句,可将这些子句与聚集配合使用来返回行组
并对那些组应用条件

显示如何使用自连接来将表连接至它本身以将列中的值与同一列中的其它值进行
比较并标识重复

说明外连接如果区别看待两个或多个表,并提供了使用 GBase 8s 扩展和 ANSI 连
接语法的四种外连接类型的示例

描述如何在另一 SELECT 语句的 WHERE 子句中嵌套 SELECT 语句,来创建相
关和非相关查询并显示如何在子查询中使用聚集函数

演示如何将 SELECT 语句嵌套在另一个 SELECT 语句的 FROM 子句中,
来指定
其结果作为外部 SELECT 语句数据源的不相关子查询

演示如何使用关键字 ALL 、ANY 、EXISTS 、IN 和 SOME 来创建子查询以及
添加关键字 NOT 或关系运算符的影响

描述如何使用集合子查询将关系数据转换为 MULTISET 类型的集合,以及如何使
用集合派生的表反访问集合中的元素

讨论联合、相交和差异集合运算

显示任何使用 UNION 和 UNION ALL 关键字创建包含两个或多个 SELECT 语
句的复合查询

7 修改数据

GBase 8s SQL 指南:教程
南大通用数据技术股份有限公司 - 156 -

本部分描述如何修改数据库中的数据。修改数据与查询数据有本质区别。查询数据涉及检
查表的内容。修改数据涉及更改表的内容。

Ispell 词典模板支持词法词典,它可以把一个词的各种语言学形式规范化成相同的
词位。
比如,
一个Ispell 英语词典可以匹配搜索词bank 的词尾变化和词形变化,
如banking、
banked、banks、banks'和bank's 等。

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
659
GBase 8c 不提供任何预定义的Ispell 类型词典或词典文件。
dict 文件和affix 文件支
持多种开源词典格式,包括Ispell、MySpell 和Hunspell 等。
操作步骤
步骤1 获取词典定义文件和词缀文件。
用户可以使用开源词典,直接获取的开源词典后缀名可能为.aff 和.dic,此时需要将
扩展名改为.affix 和.dict。此外,对于某些词典文件,还需要使用下面的命令把字符转换
成UTF-8 编码,比如挪威语词典:
iconv -f ISO_8859-1 -t UTF-8 -o nn_no.affix nn_NO.aff
iconv -f ISO_8859-1 -t UTF-8 -o nn_no.dict nn_NO.dic
步骤2 创建Ispell 词典。
gbase=#CREATE TEXT SEARCH DICTIONARY norwegian_ispell (
TEMPLATE = ispell,
DictFile = nn_no,
AffFile = nn_no,
FilePath = 'file:///home/dicts'
);
其中,词典文件全名为nn_no.dict 和nn_no.affix,所在目录为当前连接数据库主节
点的/home/dicts/下。
关于创建词典的语法和更多参数,
请参见CREATE TEXT SEARCH
DICTIONARY。
步骤3 使用Ispell 词典进行复合词拆分。
gbase=#SELECT ts_lexize('norwegian_ispell', 'sjokoladefabrikk');
ts_lexize
---------------------
{sjokolade,fabrikk}
(1 row)
MySpell 不支持复合词,
Hunspell 对复合词有较好的支持。
GBase 8c 仅支持Hunspell
中基本的复合词操作。通常情况下,Ispell 词典能够识别的词是一个有限集合,其后应
该配置一个更广义的词典,例如一个可以识别所有词的Snowball 词典。

GBase 8c SQL 参考手册
南大通用数据技术股份有限公司
660