get segments information write segments information to file [dstb_info]
gcadmin getdistribution information successful 命令执行成功,生成的dstb_info 文件内容如下:
GBase UP 产品手册 4 管理员指南
文档版本04(2021-04-21) 南大通用数据技术股份有限公司 188
功能描述 更改文本搜索配置的定义。 用户可以将映射从字串类型调整为字典, 或者改变配置的名 称或者所有者,或者修改搜索配置的配置参数。 ADD MAPPING FOR 选项为文本搜索配置增加字串类型映射;如果ADD MAPPING FOR 后面任何一个字串类型的映射已经存在于此文本搜索配置中,那么系统将会报错。 ALTER MAPPING FOR 选项会首先清除已有的字串类型映射,然后添加指定的字串类 型映射。 ALTER MAPPING REPLACE … WITH … 与ALTER MAPPING FOR … REPLACE … WITH … 选项会直接使用new_dictionary 替换old_dictionary 。需要注意的是,只有 pg_ts_config_map 系统表中存在maptokentype 与old_dictionary 对应关系的元组时,才能更 新成功,否则不会成功,也不会有任何提示信息返回。 DROP MAPPING FOR 选项会删除当前文本搜索配置中指定的字串类型映射。如果没 有指定IF EXISTS 选项,当DROP MAPPING FOR 选项指定的字串类型映射在文本搜索配 置中不存在时,数据库会报错。 注意事项 当一个搜索配置已经被引用 (如被用来创建索引) , 则不允许用户修改此文本搜索配置。 要使用ALTER TEXT SEARCH CONFIGURATION,用户必须是配置的所有者。 语法格式 增加文本搜索配置字串类型映射语法 ALTER TEXT SEARCH CONFIGURATION name ADD MAPPING FOR token_type [, ... ] WITH dictionary_name [, ... ];
GBase 8c SQL 参考手册 南大通用数据技术股份有限公司 782 修改文本搜索配置字典语法 ALTER TEXT SEARCH CONFIGURATION name ALTER MAPPING FOR token_type [, ... ] REPLACE old_dictionary WITH new_dictionary; 更改文本搜索配置字典语法 ALTER TEXT SEARCH CONFIGURATION name ALTER MAPPING REPLACE old_dictionary WITH new_dictionary; 删除文本搜索配置字串类型映射语法 ALTER TEXT SEARCH CONFIGURATION name DROP MAPPING [ IF EXISTS ] FOR token_type [, ... ]; 重命名文本搜索配置所有者语法 ALTER TEXT SEARCH CONFIGURATION name OWNER TO new_owner; 重命名文本搜索配置名称语法 ALTER TEXT SEARCH CONFIGURATION name RENAME TO new_name; 重命名文本搜索配置命名空间语法 ALTER TEXT SEARCH CONFIGURATION name SET SCHEMA new_schema; 修改文本搜索配置属性语法 ALTER TEXT SEARCH CONFIGURATION name SET ( {configuration_option = value} [, ...] ) 重置文本搜索配置属性语法 ALTER TEXT SEARCH CONFIGURATION name RESET ( {configuration_option} [, ...] ); 参数说明 name 已有文本搜索配置的名称(可以有模式修饰) 。 token_type 与配置的语法解析器关联的字串类型的名称。详细信息参见解析器。 dictionary_name
GBase 8c SQL 参考手册 南大通用数据技术股份有限公司 783 文本搜索字典名称。如果有多个字典,则它们会按指定的顺序搜索。 old_dictionary 映身中拟被替换的文本搜索字典名称。 new_dictionary 替换old_dictionary 的文本搜索字典的名称。 new_owner 文本搜索配置的新所有者。 new_name 文本搜索配置的新名称。 new_schema 文本搜索配置的新模式名。 configuration_option 文本搜索配置项。详细信息参见CREATE TEXT SEARCH CONFIGURATION。 value 文本搜索配置项的值。 示例 --创建文本搜索配置。 gbase=#CREATE TEXT SEARCH CONFIGURATION english_1 (parser=default); CREATE TEXT SEARCH CONFIGURATION --增加文本搜索配置字串类型映射语法。 gbase=#ALTER TEXT SEARCH CONFIGURATION english_1 ADD MAPPING FOR word WITH simple,english_stem; ALTER TEXT SEARCH CONFIGURATION --增加文本搜索配置字串类型映射语法。
GBase 8c SQL 参考手册 南大通用数据技术股份有限公司 784 gbase=#ALTER TEXT SEARCH CONFIGURATION english_1 ADD MAPPING FOR email WITH english_stem, french_stem; ALTER TEXT SEARCH CONFIGURATION --查询文本搜索配置相关信息。 gbase=#SELECT b.cfgname,a.maptokentype,a.mapseqno,a.mapdict,c.dictname FROM pg_ts_config_map a,pg_ts_config b, pg_ts_dict c WHERE a.mapcfg=b.oid AND a.mapdict=c.oid AND b.cfgname='english_1' ORDER BY 1,2,3,4,5; cfgname | maptokentype | mapseqno | mapdict | dictname -----------+--------------+----------+---------+-------------- english_1 | 2 | 1 | 3765 | simple english_1 | 2 | 2 | 12960 | english_stem english_1 | 4 | 1 | 12960 | english_stem english_1 | 4 | 2 | 12964 | french_stem (4 rows) --增加文本搜索配置字串类型映射语法。 gbase=#ALTER TEXT SEARCH CONFIGURATION english_1 ALTER MAPPING REPLACE french_stem with german_stem; ALTER TEXT SEARCH CONFIGURATION --查询文本搜索配置相关信息。 gbase=#SELECT b.cfgname,a.maptokentype,a.mapseqno,a.mapdict,c.dictname FROM pg_ts_config_map a,pg_ts_config b, pg_ts_dict c WHERE a.mapcfg=b.oid AND a.mapdict=c.oid AND b.cfgname='english_1' ORDER BY 1,2,3,4,5; cfgname | maptokentype | mapseqno | mapdict | dictname -----------+--------------+----------+---------+-------------- english_1 | 2 | 1 | 3765 | simple
GBase 8a MPP Cluster 产品手册 5 数据库管理指南 文档版本953(2022-04-10) 南大通用数据技术股份有限公司 1077 参数名称 说 明 2)a LEFT JOIN b ON a.c1 = b.c1 AND a.c2 = b.c2 AND a.c3 = b.c3 Vc_name vc 命,可选项。 database_name 数据库名,可选项。 table_name 表名 示例 示例1:join 语法示例。 示例中所用的表及数据: CREATE TABLE t1(id INT,name VARCHAR(30)); CREATE TABLE t2(id INT,title VARCHAR(20),name VARCHAR(30)); INSERT INTO t1 VALUES(1,'name1'),(2,'name2'),(3,'name3'); INSERT INTO t2 VALUES(1,'t1','name1'),(3,'t3','name3'),(4,'t4','name4'); gbase> SELECT * FROM t1; +------+-------+ | id | name | +------+-------+ | 1 | name1 | | 2 | name2 | | 3 | name3 | +------+-------+ 3 rows in set (Elapsed: 00:00:00.07) gbase> SELECT * FROM t2; +------+-------+-------+ | id | title | name | +------+-------+-------+ | 1 | t1 | name1 | | 3 | t3 | name3 | | 4 | t4 | name4 | +------+-------+-------+ 3 rows in set (Elapsed: 00:00:00.03) INNER JOIN: gbase> SELECT a.id,a.name,b.name,b.title FROM t1 a INNER JOIN t2 b ON
GBase 8a MPP Cluster 产品手册 5 数据库管理指南 文档版本953(2022-04-10) 南大通用数据技术股份有限公司 1078 a.id=b.id; +------+-------+-------+-------+ | id | name | name | title | +------+-------+-------+-------+ | 1 | name1 | name1 | t1 | | 3 | name3 | name3 | t3 | +------+-------+-------+-------+ 2 rows in set (Elapsed: 00:00:00.15) WHERE 子句方式,等价于上面的INNER JON: gbase> SELECT a.id,a.name,b.name,b.title FROM t1 a,t2 b WHERE a.id=b.id; +------+-------+-------+-------+ | id | name | name | title | +------+-------+-------+-------+ | 1 | name1 | name1 | t1 | | 3 | name3 | name3 | t3 | +------+-------+-------+-------+ 2 rows in set (Elapsed: 00:00:00.12) LEFT JOIN: gbase> SELECT a.id,a.name,b.name,b.title FROM t1 a LEFT JOIN t2 b ON a.id=b.id; +------+-------+-------+-------+ | id | name | name | title | +------+-------+-------+-------+ | 2 | name2 | NULL | NULL | | 1 | name1 | name1 | t1 | | 3 | name3 | name3 | t3 | +------+-------+-------+-------+ 3 rows in set (Elapsed: 00:00:00.13) RHGHT JOIN: gbase> SELECT a.id,a.name,b.name,b.title FROM t1 a RIGHT JOIN t2 b ON a.id=b.id; +------+-------+-------+-------+ | id | name | name | title | +------+-------+-------+-------+ | NULL | NULL | name4 | t4 | | 1 | name1 | name1 | t1 | | 3 | name3 | name3 | t3 | +------+-------+-------+-------+ 3 rows in set (Elapsed: 00:00:00.16)
GBase 8a MPP Cluster 产品手册 5 数据库管理指南 文档版本953(2022-04-10) 南大通用数据技术股份有限公司 1079 FULL JOIN: gbase> SELECT a.id,a.name,b.name,b.title FROM t1 a FULL JOIN t2 b ON a.id=b.id; +------+-------+-------+-------+ | id | name | name | title | +------+-------+-------+-------+ | 2 | name2 | NULL | NULL | | NULL | NULL | name4 | t4 | | 1 | name1 | name1 | t1 | | 3 | name3 | name3 | t3 | +------+-------+-------+-------+ 4 rows in set (Elapsed: 00:00:00.17) 示例2:char JOIN char(相同精度)示例。 示例中所用的表及数据: CREATE TABLE t3(a CHAR(5), b CHAR(10)); CREATE TABLE t4(a CHAR(10)); INSERT INTO t3 VALUES('abcde', 'abcde'); INSERT INTO t4 VALUES('abcde'); gbase> SELECT * FROM t3; +-------+------------+ | a | b | +-------+------------+ | abcde | abcde | +-------+------------+ 1 row in set (Elapsed: 00:00:00.03) gbase> SELECT * FROM t4; +------------+ | a | +------------+ | abcde | +------------+ 1 row in set (Elapsed: 00:00:00.02) t3.b 与t4.a 类型均为char(10),因此可以建立等值JOIN 关系: gbase> SELECT * FROM t3 JOIN t4 ON t3.b = t4.a; +-------+------------+------------+ | a | b | a | +-------+------------+------------+
GBase 8a MPP Cluster 产品手册 5 数据库管理指南 文档版本953(2022-04-10) 南大通用数据技术股份有限公司 1080 | abcde | abcde | abcde | +-------+------------+------------+ 1 row in set (Elapsed: 00:00:00.06) t3.a 类型为char(5),t4.a 类型为char(10),不同精度的char 类型间 禁止建立等值JOIN 关系: gbase> SELECT * FROM t3 JOIN t4 ON t3.a = t4.a; ERROR 1149 (42000): (GBA-02SC-1001) Data types of equivalence join relation ((`vc1.demo.t3`.`a` = `vc1.demo.t4`.`a`)) are not supported , data types: left is CHAR(5), right is CHAR(10) 示例3:char JOIN varchar 示例。 示例中所用的表及数据: CREATE TABLE t1(a CHAR(5), b CHAR(10)); CREATE TABLE t2(a varchar(10)); INSERT INTO t1 VALUES('abcde', 'abcde'); INSERT INTO t2 VALUES('abcde'); T1.a 类型时char(5), ‘abcde’ 不需要补充空格, 与varchar 的'abcde' 相等: gbase> SELECT * FROM t1 JOIN t2 ON t1.a = t2.a; +-------+------------+-------+ | a | b | a | +-------+------------+-------+ | abcde | abcde | abcde | +-------+------------+-------+ 1 row in set t1.b 类型是char(10),补齐空格后为'abcde ',与varchar 的'abcde' 不等,以下面结果集为空: gbase> SELECT * FROM t1 JOIN t2 ON t1.b = t2.a; Empty set 示例4:int JOIN varchar 示例。 示例中所用的表及数据: CREATE TABLE t5(a INT); CREATE TABLE t6(a VARCHAR(10)); INSERT INTO t5 VALUES(179); INSERT INTO t6 VALUES('179');
GBase 8a MPP Cluster 产品手册 5 数据库管理指南 文档版本953(2022-04-10) 南大通用数据技术股份有限公司 1081 int 和varchar 间可以建立等值JOIN 关系: gbase> SELECT * FROM t5 JOIN t6 ON t5.a = t6.a; +------+------+ | a | a | +------+------+ | 179 | 179 | +------+------+ 1 row in set