返回首页

gbase数据、南大通用产品文档:GBase8s更新行

更新日期:2024年09月11日

根据 SET 子句的规范,
使用 UPDATE 语句来更改表的一个或多个现有行的内容。
此语句
采用两种根本不同的形式。一种允许您按名称将特定的值指定给列;另一种允许您将(可
能是通过 SELECT 语句返回的)值的列表指定给列的列表。在任一情况下,如果您正在更
新行,且某些列有数据完整性约束,则您更改的数据必须符合对那些列的限制。要获取更
多信息,请参考 数据完整性。
注: MERGE 语句是 UPDATE 语句的一种替代,可使用与 UPDATE 语句一样的 SET 子句语法来
修改表的现有行中的一个或多个值。MERGE 语句执行源表与目标表的外部连接,然后以来自于
连接的结果集的值更新目标表中的行,
其连接谓词求值为 TRUE。
MERGE 语句不更改源表中的值。
除了更新行之外,MERGE 语句可可选地同时组合 UPDATE 与 INSERT 操作,或可同时组合
DELETE 与 INSERT 操作而不更新任何行。
要获取关于 Update 合并、
Delete 合并和 Insert 合
并的语法和限制的更多信息,请参阅《GBase 8s SQL 指南:语法》 中 MERGE 语句的描述。

控制是否开启union 重分布优化,取值范围[0,1,2]
默认值为0 代表关闭
1 表示开启,不支持union 两边对应为int 和decimal 列进行重分布优化
2 表示开启,支持union 两边对应为int 和decimal 列进行重分布优化,重分

GBase 8a MPP Cluster 产品手册
6 附录
文档版本953(2022-04-10)
南大通用数据技术股份有限公司
1570
布前会将int 列转换为decimal 类型,进行重分布

功能
显示指定commitid 的failover 详细信息。
表4- 33 名称说明
名称
说明
failover_information
failover相关信息,
包括commit_id, database, table, scn,
type, create_time, state, original_node, takeover_node,
takeover_number。详细信息含义参见表4-24。
content
failover 完整信息,最大256k。
status
failover 操作的对象状态,即对应的是哪个节点哪个
分片的状态。
例如node1.n1 init 含义就是node1 节点上n1 分片尚
未提交处于初始化状态。
rebalance_information
rebalance 独有信息(含distribution_id, current_scn,
current_step, 中间表名),ddl dml 显示为空标签。
sdm
rebalance 独有信息,ddl dml 显示为空标签。包含如
下字段:

NodeId.Suffix :某个节点的某个分片;

curRowid:rebalance 执行到的行的行标;

Blockid BlockNum:上一批rebalance 执行到的
行的行标。
语法
gcadmin showfailoverdetail [xml_file_name]
表4- 34 参数说明
参数名称
说明
commitid
failover 的唯一标识,该参数必须输入。
xml_file_name
保存failover 信息的文件名,
可选参数,
若不输入则将failover
信息打印到屏幕。
示例
$ gcadmin showfailoverdetail 1



GBase 8a MPP Cluster 产品手册
4 管理员指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
207

1
test

t1

1
ddl
20161019101114
5
192.168.153.130
0.0.0.0
0

create table t1(a int)



1
10
3
tmpt1



from_slice node1.n1.row10.block_id1
from_slice node2.n2.row9.block_id2
from_slice node3.n3.row8.block_id3