返回首页

gbase数据、南大通用产品文档:GBase8a终止DBLink 查询

更新日期:2024年09月11日

用户有两种终止DBLink 查询的方法。一是用户直接在执行查询的控制台(执行查
询的session),使用ctrl+c 组合键;二是在其他控制台,发送kill session_id 命令的
方式。
终止查询的效果分两种情况讨论。

对于select * from t1@gc_link t1, t2@gc_link t2 where t1.a = t2.a;类似这种纯同
源DBLink 表查询,
查询结果直接返回给用户。
终止查询的命令可以得到快速响应。
当用户发起终止查询的操作后,远端(数据源)的执行也会被中断,以快速响应用
户的操作;

对于其他类型的DBLink 查询(例如insert into t select * from t1@gc_link t1,
t2@gc_link t2 where t1.a = t2.a;)。当远端(数据源)查询的目的是把数据拉到本地
集群时,
则远端
(数据源)
无法快速响应用户的终止查询操作。
如果当前执行的step
是远端(数据源)查询,则用户的终止查询操作需要等待远端(数据源)执行结束,
查询才会结束。
说明
当用户的DBLink 查询被终止后,会在相应控制台打印如下报错信息:
gbase> select * from lineitem@tpch_link l, orders@tpch_link o ;
ERROR 1317 (70100): Query execution was interrupted

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

COUNT(expr)
函数说明
返回一个SELECT 语句检索出来的记录行中非NULL 值的记录总数目。
示例
示例1:检索满足条件的记录总数,并按c_mktsegment 进行分组。

GBase 8a MPP Cluster 产品手册
5 数据库管理指南
文档版本953(2022-09-15)
南大通用数据技术股份有限公司
857
gbase> SELECT c.c_mktsegment,COUNT(*) FROM ssbm.lineorder l,
ssbm.customer c WHERE l.lo_custkey = c.c_custkey GROUP BY
c.c_mktsegment;
+--------------+----------+
| c_mktsegment | COUNT(*) |
+--------------+----------+
| HOUSEHOLD
|
1217475 |
| AUTOMOBILE
|
1174124 |
| BUILDING
|
1230857 |
| FURNITURE
|
1182372 |
| MACHINERY
|
1196343 |
+--------------+----------+
5 rows in set
说明
COUNT(*)在它返回检索出的记录行的数目上稍微有点不同,
它不管
记录行中是否包括NULL 值。
因为,
ssbm 是一个随机生成数据的演示数据库,
因此执行结果会有差异,上述结果只是一个演示结果。

CTE(with…as…)