暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

南大通用Gbase 8a学习参考试题

原创 gbase 8a培训 2023-04-27
5682

【E01 GBase 8a 数据库核心技术】 【总题量】5 题

【多选题】8a数据库的压缩支持( )
A 按库压缩
B 按表压缩
C 按列压缩
D 按行压缩

【正确答案】 A B C
【解析】
实现库级、表级、列级三级压缩选项。
压缩算法按数据类型和数据分布不同而优化,自动选择最优压缩算法,灵活平衡性能与压缩比的关系。可以对压缩方式进行修改。

【多选题】以下针对GBase 8a集群数据库中DC的描述正确的是( )?
A DC是基本的I/O单位
B 每个DC自动封装和压缩
C 每个DC包含65535行数据
D DC尾块不压缩

【正确答案】 A B D
【解析】
DC文件依据操作系统的文件大小限制进行分裂和存储。
DC是基本I/O单位,只有查询所涉及到的列才产生I/O。
每个DC包含65536行数据,数据行数不足时以DC尾块形式单独存放。
DC尾块不封装、不压缩。

【多选题】
以下关于粗粒度智能索引描述正确的是( )?
A 免维护,自动建立。
B 每一列数据都会生成一个粗粒度智能索引。
C 索引的建立和维护对资源的消耗可以忽略不计。
D 记录DC内的最大值、最小值、空值、求和值等。

【正确答案】 A C D
【解析】
粗粒度:轻量级索引,索引的建立和维护对系统资源的占用和性能影响几乎为零
透明性:索引自动建立,并且随数据变化自动更新,无需人工干预
有效性:大大缩小查询和数据物化的范围,迅速定位目标数据集
记录DC内的最大值、最小值、空值、求和值等。

【单选题】GBase 8a集群数据库属于( )?
A OldSQL事务型数据库
B NewSQL分析型数据库
C NoSQL互联网类数据库
D 以上都不是

【正确答案】 B
【解析】
南大通用大规模分布式并行数据库是列存数据库,主要用于分析场景,属于NewSQL分析型数据库。

【多选题】GBase 8a集群数据库主要应用于(         )?
A 交易系统
B 数据仓库系统
C 商业智能系统
D 决策支持系统

【正确答案】 B C D
【解析】
南大通用大规模分布式并行数据库集群系统是为管理超大规模数据量而设计的通用计算平台,具备高性能、高可用、高扩展特性,广泛应用于各类企事业单位的数据仓库系统、BI系统和决策支持系统。


【E02 GBase 8a 数据库架构演进】 【总题量】5 题


【单选题】GBase 8a集群中由数据节点组成的集群叫做(    )?
A 虚拟集群
B 调度集群
C 镜像集群
D 计算集群

【正确答案】D
【解析】
由管理节点组成的集群叫调度集群,由数据节点组成的集群叫计算集群。两个集群协同工作形成联邦架构。

【判断题】Coordinator节点可以与data node节点部署于不同IP网段。(    )
正确
错误

【正确答案】正确
【解析】
调度集群内的所有Coordinator节点必须处于同一网段。而对数据节点只要网络可达即可。

【判断题】Coordinator节点需要分别连接数据网络和业务网段。( )
正确
错误

【正确答案】正确
【解析】
Coordinator节点,分别连接数据网络(集群内部网络)和业务网络(集群外部网络),一个用于集群内部通信(建议万兆带宽),一个用于对外提供数据库服务(建议千兆带宽)。

【多选题】支持联邦架构和多分片的gbase 8a 版本是(    )?
A v83
B v85
C v86
D v95

【正确答案】C D
【解析】
v83和v85版本8a集群并不是联邦架构概念,且每个节点只能一个分片,不支持多分片。v86版本开始支持多分片,且架构调整为联邦架构。V95版兼容v86版,延续了联邦架构和多分片的技术特点。

【单选题】集群中负责各节点实例间共享信息,并在多副本操作中,控制各节点数据一致性状态的组件是( )?
A gnode
B gcware
C gcluster
D syncserver

【正确答案】 B
【解析】
GCWare 用于各节点GCluster 实例间共享信息,以及控制多副本数据操作时,提供可操作节点,并在多副本操作中,控制各节点数据一致性状态。


【E03 GBase 8a 安装与卸载】 【总题量】6 题

【判断题】GBase 8a集群需要以root用户身份进行各节点的license注册。(      )
正确
错误

【正确答案】错误
【解析】
各节点的license注册使用DBA账户完成。

【多选题】GBase 8a集群数据库安装前,需要为安装用户开放哪些目录的权限(     )?
A 集群的安装目录
B /root目录
C /tmp目录
D /home 目录

【正确答案】A C
【解析】
集群各节点的安装目录要允许安装用户远程写入数据库文件。而/tmp目录则会在安装数据库时存放安装过程中的日志文件。所以这两个目录都要开放相应权限。

【判断题】GBase 8a集群数据库安装成功后,数据库的初始管理员为root,密码为空。( )
正确
错误

【正确答案】正确
【解析】
数据库安装完成后,数据库自动生成管理员账户root,初始密码为空。使用root账户登录数据库后执行初始化数据库操作,数据库才能正常使用。

【多选题】下列有关SetSysEnv.py脚本描述正确的是( )?
A 每个节点安装前都要执行该脚本
B 该脚本由DBA用户操作执行
C cgroup参数是可选项
D 运行产生的日志文件存在/tmp目录下

【正确答案】A C D
【解析】
SetSysEnv.py脚本用于设置集群各节点的安装环境,会涉及到系统环境的设置,所以需要以操作系统的管理员身份执行。

【多选题】影响license失效的原因有( )?
A 超过数据库合法使用期限
B 内存大小变动
C 更换网卡
D 删除了license文件

【正确答案】A B C
【解析】
CPU变更、Memory变更(总内存大小变动等)、Mac地址变更(更换网卡、网卡数量变动等)和license 过期都会造成license失效。另外,license文件导入成功之后删除license文件并不会导致license失效。

【多选题】下列有关demo.options文件描述正确的是( )?
A demo.options是安装集群的配置文件
B 该文件用于指定各集群节点角色
C 扩容操作需要使用该文件
D 在demo.options文件中写明密码即代表所有节点所使用的密码一致

【正确答案】A B C D
【解析】
8a集群安装时,使用demo.options文件作为集群静默安装的配置文件。该文件标识集群各节点角色、账户信息、密码等。


【E05 GBase 8a 数据库版本升级】 【总题量】7 题

【判断题】集群升级成功后,执行过DDL、DML、扩容、生成新distribution或产生数据不一致情况,就无法进行升级回退操作了。( )
正确
错误

【正确答案】正确
【解析】
有升级备份文件还要满足如下条件才能实现回退操作:
升级完成后,没有执行过DDL、DML、扩容、生成新distribution操作,没有生成新的 FEVENTLOG。

【判断题】升级备份文件,默认存储在集群安装目录。( )
正确
错误

【正确答案】错误
【解析】
升级备份文件默认存放在DBAUser 的 home 目录下。

【判断题】升级备份文件用于进行升级回退操作。( )
正确
错误

【正确答案】正确
【解析】
有升级备份文件还要满足如下条件才能实现回退操作:
升级完成后,没有执行过DDL、DML、扩容、生成新distribution操作,没有生成新的 FEVENTLOG。

【判断题】数据库升级分为架构相同的数据库版本升级和架构不同的数据库版本升级,两者使用的升级命令是一样的。( )
正确
错误

【正确答案】正确
【解析】
虽然集群架构相同的升级和集群架构不同的升级命令相同,但两者的执行理念不同。集群架构不同的升级需要对demo.options文件进行重新编辑,保证集群升级前后的集群角色和架构逻辑不变。

【判断题】数据库升级时,新旧版本的集群角色必须一致且集群规模也必须相同。( )
正确
错误

【正确答案】正确
【解析】
新旧版本数据库集群架构相同时,直接使用-U参数升级即可。集群架构不同的升级需要对demo.options文件进行重新编辑,保证集群升级前后的集群角色和架构逻辑不变。

【判断题】集群升级前,需要停掉所有节点的集群服务。( )
正确
错误

【正确答案】正确
【解析】
集群升级与安装操作基本相同,是在原有数据库的基础上,进行安装和替换,所以需要停掉所有节点的集群服务。


【判断题】v95版本数据库的兼容模式与v86版本数据库的集群架构一致。( )
正确
错误

【正确答案】正确
【解析】
v95版本数据库有兼容模式和多VC模式,其中兼容模式就是用于兼容v86版本,采用单VC架构。

【E06 GBase 8a 数据库客户端】 【总题量】5 题

【判断题】集群的coordinator节点内嵌了客户端、服务器和DBMS。( )
正确
错误

【正确答案】正确
【解析】
集群的coordinator节点内嵌了客户端gccli,并为客户端提供数据库服务器端连接。数据库管理系统管理各集群节点。

【多选题】企业管理器GBaseDataStudio能够实现以下哪些功能(        )?
A 查看集群环境日志
B 创建和删除用户
C 管理多个集群
D 执行SQL脚本

【正确答案】A B C D
【解析】
企业管理器作为集群的图形化客户端,可以实现各种数据库操作并可视化数据库对象。

【判断题】运行在非Coordinator节点的命令行客户端,必须使用“-h”参数。( )
正确
错误

【正确答案】正确
【解析】
gccli -h 参数用于指定通过哪个服务器登录数据库。除非数据库客户端与登录服务器在同一节点,否则需要指定-h参数指明要登录的服务器。

【多选题】以下关于企业管理器GBaseDataStudio说法正确的是(         )?
A 通过JDBC连接数据库
B 可以用它执行加载操作
C 它是8a数据库的图形化客户端
D 它只能用在windows系统平台

【正确答案】A B C
【解析】
企业管理器作为集群的图形化客户端,提供linux版和windows版。

【多选题】企业管理器GBaseDataStudio中的审计管理栏记录哪些日志(      )?
A 跟踪日志
B 审计日志
C 错误日志
D 加载日志

【正确答案】A B C
【解析】
审计管理栏包含:审计日志、错误日志、跟踪日志、数据库启停日志。


【E07 GBase 8a 集群管理工具】 【总题量】7 题

【单选题】有关gcluster_services all stop命令,描述正确的是( )?
A 关闭整个集群服务
B 只有操作系统管理员root可以使用
C 仅关闭当前节点的集群进程
D 关闭的集群进程会自动被gcmonitor拉起

【正确答案】C
【解析】
由DBA用户执行,关闭当前节点的所有数据库服务进程。

【多选题】gcluster_services all info命令有可能查看到以下哪些进程( )?
A gcware
B gcluster
C gcrecover
D gcmmonit

【正确答案】A B C
【解析】
[gbase@node131 ~]$ gcluster_services all info
gcware is running
gcluster is running
gcrecover is running
gbase is running
syncserver is running

【多选题】gcadmin能查询的管理日志包括( )?
A DDLevent
B DMLevent
C DCLevent
D DDLstorageevent

【正确答案】A B
【解析】
能够查看的日志是:DDLevent、DMLevent和DMLstorageevent

【单选题】使用gcadmin工具显示集群状态正常的是(    )?
A ACTIVE
B OPEN
C NORMAL
D 0

【正确答案】A
【解析】
CLUSTER STATE: ACTIVE
VIRTUAL CLUSTER MODE: NORMAL
===============================================================
| GBASE COORDINATOR CLUSTER INFORMATION |
===============================================================
| NodeName | IpAddress | gcware | gcluster | DataState |
---------------------------------------------------------------
| coordinator1 | 172.16.4.131 | OPEN | OPEN | 0 |
---------------------------------------------------------------
| coordinator2 | 172.16.4.132 | OPEN | OPEN | 0 |
---------------------------------------------------------------
===============================================================================
| GBASE DATA CLUSTER INFORMATION |
===============================================================================
| NodeName | IpAddress | DistributionId | gnode | syncserver | DataState |
-------------------------------------------------------------------------------
| Node1 | 172.16.4.131 | 1 | OPEN | OPEN | 0 |
-------------------------------------------------------------------------------
| Node2 | 172.16.4.132 | 1 | OPEN | OPEN | 0 |
-------------------------------------------------------------------------------
| Node3 | 172.16.4.133 | 1 | OPEN | OPEN | 0 |
-------------------------------------------------------------------------------

【单选题】以下有关8a集群初始化之前可运行的操作描述正确的是(    )?
A 可以查看系统数据库
B 可以创建数据库
C 可以创建账户
D 能够删除数据

【正确答案】A
【解析】
只有初始化后,数据库才能将数据写入相对应的数据分片。

【单选题】监控集群模组工作状态的工具是( )?
A nmon
B gcmmonitor
C gcmonitor
D gcluster_services all info

【正确答案】C
【解析】
gcmonitor监控以下进程:gcluster、 gcware 、gcrecover、 gcmmonit、 gbase syncserver。
gcmmonitor监控gcmonitor。

【单选题】当集群管理节点出现数据不一致时,应如何定位问题( )?
A gcadmin showddlevent
B gcadmin showdmlevent
C gcadmin showdmlstorageevent
D 查看网络

【正确答案】A
【解析】
集群管理节点主要维护数据库的元数据,所以出现数据不一致时主要查看ddlevent。


【E08 GBase 8a SQL基础】 【总题量】10 题
【单选题】GBase 8a MPP Cluster 每条SQL语句默认的结束符号是( )
A .
B ;
C #
D --

【正确答案】B
【解析】GBase 8a MPP Cluster 每条SQL语句默认的结束符号;号

【多选题】GBase 8a MPP Cluster 中,关于SQL描述错误的是(  )
A SQL 的关键词不区分大小写,例如 SELECT 和select都可以正确执行。
B 默认 SQL 执行采用自动提交方式,跟oracle默认非自动提交不同,不用单独写commit语句。
C 数据库、表、列等标识符名称默认支持的字符为字母、数字、_下划线、中文组合,名称长度有最大长度限制。
D 数据库、表、列等标识符名称中包括特殊字符或关键词时,需要加``反引号包围,例如`gs-table.gs-column`。

【正确答案】C D
【解析】
需要设置gcluster_extend_ident参数为1时,才支持中文库名、表名,默认此参数为0,不支持中文。数据库、表、列等标识符名称中包括特殊字符或关键词时,每个对象需要加``反引号包围,例如`gs-table`.`gs-column`,不能加到一起。

【单选题】GBase 8a MPP Cluster中,使用以@开头的变量是( )
A 局部变量
B 系统变量
C 用户变量
D 全局变量

【正确答案】C
【解析】以@开头的变量是用户变量。★

【多选题】GBase 8a MPP Cluster 支持数据类型中,( )类型不能有 DEFAULT 值。
A DECIMAL
B TEXT
C BLOB D LONGBLOB
【正确答案】B C D
【解析】大对象类型不支持DEFAULT 值,像TEXT、BLOB和LONGBLOB。★

【单选题】GBase 8a MPP Cluster 支持的DATETIME类型,支持的最小时间单位是( )
A 秒
B 毫秒
C 微秒
D 纳秒

【正确答案】C
【解析】GBase 8a MPP Cluster 支持的DATETIME类型,支持的最小时间单位是微秒★

【单选题】GBase 8a MPP Cluster 支持的DECIMAL(M,D)类型,其中M是总位数,最大支持( )位
A 16
B 18
C 64
D 65

【正确答案】D
【解析】GBase 8a MPP Cluster 支持的DECIMAL(M,D)类型,其中M是总位数,最大支持65位★

【判断题】GBase 8a MPP Cluster v9版本增加虚拟集群的概念,当没有多个VC情况下,8a集群为兼容模式,会默认包括一个VC,id是vc00001,在访问路径中可以省略。(  )
正确
错误

【正确答案】正确
【解析】


【判断题】其他数据库表要迁移到GBase 8a MPP Cluster 时,当遇到跟8a支持的数据类型关键词不一致时,必须要把列的数据类型完全改写成8a支持的数据类型才能正确建表。( )
正确
错误

【正确答案】错误
【解析】8a支持隐式转换,对于一些数据类型,例如bool类型、int2等,能自动转换成8a支持的列类型★

【单选题】在实际的GBase 8a项目中,建议客户使用(     )类型存储字符串。
A CHAR
B TEXT
C VARCHAR
D VARCHAR2

【正确答案】C
【解析】数仓等项目建议使用VARCHAR类型存储字符串,8a不支持VARCHAR2类型。★

【单选题】DECIMAL类型是严格的数值数据类型,建表语句 create table t(i int, j decimal);中,没有具体写DECIMAL位数,则默认是( )位
A 0
B 10
C 18
D 65

【正确答案】B
【解析】DECIMAL默认是DECIMAL(10,0)★


【E09 GBase 8a DDL-数据库、表管理】 【总题量】10 题

【单选题】对临时表描述错误的是(  )
A 使用关键词TEMPORARY
B 被限制在当前连接中,当连接关闭时,临时表会自动被删除。
C 临时表跟表类型无关,可以建成随机分布临时表,也可以建成复制临时表。
D 临时表跟表操作命令一样,支持所有 DDL 及 DML 操作。

【正确答案】D
【解析】
临时表不支持ALTER TABLE。★

【单选题】建表语句create table tb(id int, name varchar(50),c int) REPLICATED; 创建的是( )表?
A 分布表
B 临时表
C 复制表
D 分区表

【正确答案】C
【解析】REPLICATED表示创建的是复制表★

【单选题】若要完整删除数据库中已经存在的表S,可使用下列哪个命令( )。
A DELETE TABLE S
B DROP TABLE S
C DROP S
D DELETE S

【正确答案】B
【解析】DROP TABLE S; 命令可删除表和表数据占用的空间★

【单选题】当客户端连接上GBase 8a MPP Cluster数据库后,执行( )SQL命令切换到指定数据库下。
A show databases;
B create database database_name;
C use database_name;
D select database();

【正确答案】C
【解析】使用use database_name; 命令切换到指定数据库下★


【单选题】建表语句 create table t(a int ,b varchar(50),c int),未写明特别的关键字,则创建的是( )表?
A 分布表
B 临时表
C 复制表
D 分区表;

【正确答案】A
【解析】未写明特别的关键字的建表语句,则创建的是随机分布表。★


【单选题】hash分布表中的被选为distributed by列字段,不能被( )操作。
A delete
B update
C insert
D 以上三种

【正确答案】B
【解析】hash分布表中的分布列字段,不能被update更新,语法会报错。★


【多选题】以下哪个操作能释放t表数据占用的物理空间( )
A DROP TABLE t;
B RENAME TABLE t TO a;
C DELETE FROM t;
D TRUNCATE TABLE t;

【正确答案】A D
【解析】DROP TABLE和TRUNCATE TABLE可以释放数据占用的空间。★

【多选题】使用ALTER TABLE语句能修改表字段的( )
A 数据类型
B 默认值
C varchar类型的长度
D 名字

【正确答案】C D
【解析】ALTER TABLE语句不支持改变列的数据类型、改变列的属性(NOT NULL,默认值)、改变表的字符集;可改变列的长度,只能变大,不能变小;可改变名称★

【单选题】当t1表是复制表时, 执行CREATE TABLE t2 LIKE t1; 则t2表是(  )
A hash分布表
B 随机分布表
C 复制表
D 分区表

【正确答案】C
【解析】
CREATE TABLE…LIKE可以复制表结构包含表的分布类型。

【多选题】目前GBase 8a 的hash分布列支持哪几种数据类型( )
A varchar
B char
C int
D decimal

【正确答案】A C D
【解析】hash分布列支持当前只支持整数类型、varchar、decimal数据类型


【E10 GBase 8a DDL-视图、索引】 【总题量】5 题

【单选题】索引是在基本表的列上建立的一种数据库对象,它同基本表分开存储,使用它能够加快数据的( )速度。
A delete
B update
C insert
D select

【正确答案】D
【解析】索引能够加快数据的查询SELECT速度★

【判断题】查询视图跟查询表操作一样,使用show tables;命令可查询视图名称。
正确
错误

【正确答案】正确
【解析】使用show tables;命令可查询表名和视图名

【多选题】hash索引列不支持数据类型是( ) 。
A DECIMAL
B TEXT
C BLOB
D VARCHAR

【正确答案】B C
【解析】hash分布列支持当前只支持整数类型、varchar、decimal数据类型

【多选题】GBase 8a MPP Cluster支持的索引有( )
A 智能索引
B 聚簇索引
C 全文索引
D hash索引

【正确答案】A C D
【解析】8a不支持聚簇索引★

【单选题】GBase 8a MPP Cluster支持对视图进行( )操作。
A delete
B update
C insert
D select

【正确答案】D
【解析】禁止对视图进行INSERT、UPDATE 和 DELETE 操作。★


【E11 GBase 8a DML语句】 【总题量】9题

【单选题】GBase 8a MPP Cluster执行SQL命令,DDL和DML执行步骤不同点:()
A 一条DDL命令会在所有gcluster管理节点和gnode计算节点执行。一条DML命令由GCluster发起节点下发给gnode计算节点,各计算节点执行DML命令更新数据,然后返回结果给发起管理节点。
B DDL和DML语句首先发给所有管理节点,然后再下发到各个计算节点。
C DDL仅在所有管理节点上执行;DML语句仅在计算节点上执行。
D DDL和DML语句首先发给GCluster发起节点,再下发到各个计算节点。

【正确答案】A
【解析】
一条DDL命令会在所有gcluster管理节点和gnode计算节点执行。一条DML命令由GCluster发起节点只下发给gnode计算节点,各计算节点执行DML命令更新数据,然后返回结果给发起管理节点。★


【多选题】以下INSERT语句正确的是()
A INSERT INTO score (sid, score ) VALUES (1, 80);
B INSERT INTO TABLE score (sid, score ) VALUE (1, 80);
C INSERT score (sid, score ) VALUES ( (1, 80), (2, 76), (3, 91), (4,86), (5,89) );
D INSERT score (sid, score ) VALUES (1, 80), (2, 76), (3, 91), (4,86), (5,89) ;

【正确答案】A D
【解析】
value后要有s;插入多个值时,元组集合外不用再加一层圆括号★


【多选题】哈希分布表的哈希列的约束是()
A 哈希列的值不能是空值。
B 哈希列只支持1列。
C 哈希列的值支持的数据类型是整型、DECIMAL或VARCHAR。
D UPDATE语句不能改写哈希列的值。

【正确答案】C D
【解析】v95版本的8a支持hash列可以是null值和多列hash。★


【多选题】Student包含SId , Sname, Sdept, Sage等字段,以下INSERT语句正确的是()
A INSERT Student (SId , Sname) SELECT user_id, user_Name FROM user_info
B INSERT INTO Student (SId , Sname) SELECT user_id, user_Name FROM user_info
C INSERT INTO Dept_age (Sdept , Avg_age) SELECT Sdept, AVG(Sage) FROM Student GROUP BY Sdept
D INSERT INTO Student SELECT user_id, user_Name FROM user_info

【正确答案】A B C
【解析】
表名后不写明要插入的列是错误的★


【单选题】哈希分布表中被定义为distributed by的字段,不能做( )操作。
A delete
B update
C insert
D 以上三种

【正确答案】B
【解析】哈希分布表中的hash列字段,不能做update操作★


【多选题】数据操作语句DML包含()
A SELECT
B INSERT
C DELETE
D UPDATE

【正确答案】B C D
【解析】DML不包含SELECT查询语句。★

【单选题】快速UPDATE模式,需要开启()参数开关
A gbase_fast_update
B fast_update
C _t_gbase_fast_update
D _fast_update

【正确答案】A
【解析】快速UPDATE模式,需要开启gbase_fast_update参数为1或者on,开启快速更新模式。★


【判断题】GBase 8a的 DELETE操作会实际删除数据,重新创建智能索引,所以删除数据操作的性能较低。
正确
错误

【正确答案】错误
【解析】GBase 8a的 DELETE操作会打删除标记,不实际删除数据。

【判断题】GBase 8a的 DELETE支持级联删除,即关联表的数据同时被删除。
正确
错误

【正确答案】错误
【解析】GBase 8a的 DELETE操作不支持级联删除,一次只能删除一个表中的数据。


【E12 GBase 8a DQL语句】 【总题量】8 题

【单选题】笛卡尔乘积是由于()的表关联产生的。
A 左外连接
B 右外连接
C 全连接
D 没有关联条件

【正确答案】D
【解析】没有关联条件的两表会产生两表条数相乘记录的联合表。★


【单选题】GBase 8a MPP Cluster执行单个hash分布表select语句,WHERE子句中只有一个hash分布列条件,语句会下发到()计算节点上
A 所有
B 指定
C 随机一个
D 和条件比较值的hash运算值相匹配的

【正确答案】D
【解析】hash分布表能计算出数据具体落在哪个节点上,所以不是所有节点都查询,只下发到有该数值的节点执行即可。★


【多选题】表连接类型分为()两大类
A 内连接
B 外连接
C 左连接
D 右连接

【正确答案】A B
【解析】表连接类型分为内连接和外连接。★


【多选题】使用union或union all时,需()
A 必须保证各个select 集合的结果有相同个数的列。
B 必须保证各个select 集合相同次序上的列名相同。
C 必须保证各个select 集合对应的列类型是一样的。
D 各个select 集合相同次序上的列名可以不同。

【正确答案】A C D
【解析】各个select 集合投影列相同次序上的列类型一致,个数一致,列名可以不同,以第一个select列名显示。

【单选题】GBase 8a MPP Cluster执行单个复制表DQL语句,会下发到()计算节点上
A 所有
B 指定
C 随机一个
D 以上皆非

【正确答案】C
【解析】每个节点都有复制表,随机选择一个节点执行即可。★

【单选题】COUNT(*) 和COUNT(colName) 结果()
A 完全相同。
B colName列存在NULL值时,不同。
C 总是不同。
D 由表类型(哈希分布表、随机分布表)决定。

【正确答案】B
【解析】有null值时,二者查询的条数不同。COUNT(colName)只记录不含null值的条数。★


【多选题】where和having用法区别()
A where中不能有列的别名,having中可以操作列的别名。
B WHERE子句用来筛选 FROM 子句中指定的数据集。HAVING 子句用来从分组的结果中筛选行。
C where中不能有聚合函数,having中可以有聚合函数。
D 执行的顺序不一样: where的搜索条件是在进行分组之前执行;having的搜索条件是在分组后执行的。

【正确答案】B C D
【解析】
having子句中不能有列的别名。

【单选题】以下聚合语句中错误的是()
A select Ssex, count(Sno) from student group by Ssex;
B select YEAR(Sage), count(Sno) from student group by YEAR(Sage);
C select Cno, count(Sno) from student group by Cno;
D select Cno, count(Sno) from student group by Ssex;

【正确答案】D
【解析】有group by子句时,投影列需包括group by后分组字段和聚合函数。★


【E13 GBase 8a 常用系统函数】 【总题量】17 题

【单选题】SELECT TRUNCATE(127.456, -1) 执行结果为()
A 100
B 120
C 123.5
D 123.4

【正确答案】B
【解析】
TRUNCATE函数为截取指定位数,-1参数表示小数点前1位,为十位,则直接舍去十位数后面的数字,结果为120。★★


【判断题】系统函数在SQL语句中,经常出现的位置在SELECT投影列中, 或者WHERE子句中的查询条件中。
正确
错误

【正确答案】正确
【解析】★


【单选题】SELECT LAST_DAY('0000-12-1') 运行的结果是()
A 0-12-31
B 0000-12-31
C 0000-12-30
D NULL

【正确答案】D
【解析】'0000-12-1'不是一个正确的日期,返回值为NULL。★


【单选题】统计2012(含)年后出生的学生,以下()语句正确并且执行效率最高。
A select SId, Sname, Sage from student where to_char(Sage,'YYYY') >= 2012;
B select SId, Sname, Sage from student where Sage >= to_date('2012-1-1')
C select SId, Sname, Sage from student where Sage >= to_date('2012-1-1','YYYY-MM-DD');
D select SId, Sname, Sage from student where to_char(Sage,'YYYY') > 2012;

【正确答案】C
【解析】
where条件中使用函数尽量在值上,不要在字段上使用函数,这样少执行函数次数,提高性能。B结果不对是to_date函数有两个参数,只写了一个参数。★


【单选题】select round(123.456,-2)的执行结果:
A 123.46
B 123.45
C 100
D 123.00

【正确答案】C
【解析】
round函数支持四舍五入,-2参数表示小数点前2位,为百位,看十位数为2,则直接舍去,结果为100。★

【单选题】SELECT CHAR_LENGTH('南大通用数据') 执行结果是()
A 12
B 6
C 18
D 10

【正确答案】B
【解析】CHAR_LENGTH()函数返回值是字符个数,则结果为6。★


【多选题】以下条件分支语句正确的是()
A CASE Ssex WHEN '男' THEN '帅哥' WHEN '女' THEN '美女' ELSE '不明'
B CASE Ssex WHEN '男' THEN '帅哥' WHEN '女' THEN '美女' ELSE '不明' END
C CASE Ssex WHEN '男' THEN '帅哥' WHEN '女' THEN '美女' END
D CASE WHEN Ssex='男' THEN '帅哥' WHEN Ssex='女' THEN '美女' ELSE '不明' END

【正确答案】B C D
【解析】
语句末尾要有END★


【多选题】字符串连接语句正确的是()
A select '我已使用' || 20 || '天GBase 8a'
B select '我已使用' + '20' + '天GBase 8a'
C select concat('我已使用', 20, '天GBase 8a')
D select concat('我已使用', '20', '天GBase 8a')

【正确答案】A C D
【解析】+为数值相加,没有字符串拼接的功能。★

【单选题】数据库字符集是UTF8,SELECT LENGTH('南大通用数据') 执行结果是()
A 12
B 6
C 18
D 10

【正确答案】C
【解析】
LENGTH()函数返回值是字节个数,默认是UTF8字符集,一个汉字为3个字节存储,则结果为18★


【单选题】关于NULL的叙述,()是错误的
A NULL值表示“没有数据”,值未知,值不确定,不占空间。
B NULL 的拼写,大小写无关。
C SELECT count(Sage) FROM Student 统计表包括NULL值的总条数。
D NULL 和 UNKNOWN 是等价的。

【正确答案】C
【解析】count(Sage) 不统计表中该字段为NULL值的条数


【多选题】查询日期月份最后一天,以下语句哪些是正确的()
A select last_day('2019年2月10日')
B select last_day('2019-2-10 12:10:30')
C select last_day('19-02-10')
D select last_day('190210')
E
以上皆错

【正确答案】B C D
【解析】含中文字符日期不是标准可支持的日期类型格式★


【单选题】求距离月底还有多少天,正确的语句是()
A SELECT DATEADD(LAST_DAY(NOW()), NOW());
B SELECT DATEDIFF(LAST_DAY(NOW()), NOW());
C SELECT DATESUB(LAST_DAY(NOW()), NOW());
D SELECT DATEDIFF(NOW(), LAST_DAY(NOW()));

【正确答案】B
【解析】
DATEDIFF(LAST_DAY(NOW()), NOW())得到了天数为正数,DATEDIFF(NOW(), LAST_DAY(NOW()))得到的天数为负数。★


【单选题】NOW和SYSDATE函数的区别是()
A NOW有同义词,SYSDATE没有同义词。
B NOW取的是语句开始执行的时间,SYSDATE取的是该函数执行的实时时间。
C NOW得到当前日期和时间,SYSDATE得到当前日期。
D NOW得到当前时间,SYSDATE得到当前日期。

【正确答案】B
【解析】NOW和SYSDATE函数都能得到当前日期和时间,区别NOW取的是语句开始执行的时间,SYSDATE取的是该函数执行的实时时间。★


【多选题】获取当前日期时间,可以使用()函数。
A SYSDATE
B NOW
C CURDATETIME
D CURRENT_TIMESTAMP
E CURRENT_DATETIME

【正确答案】A B C D E
【解析】全部都正确,都能获取当前日期时间。★


【单选题】显示”2021年03月16日”这样的日期格式,正确的SQL语句是()
A SELECT DATE_FORMAT(sysdate(), '%y年%m月%d日')
B SELECT DATE_FORMAT(sysdate(), '%Y年%m月%d日')
C SELECT DATE_FORMAT(sysdate(), '%Y年%0m月%d日')
D SELECT DATE_FORMAT(sysdate(), '%Y年%mm月%dd日')

【正确答案】B
【解析】
根据日期格式规则,正确答案为SELECT DATE_FORMAT(sysdate(), '%Y年%m月%d日'), %Y 代表4位的年,%m 代表2位的数字月,%d代表2位的天

【单选题】SELECT add_months('2020-12-30', 1);的执行结果()
A 2020-01-30 00:00:00
B 2020-11-30 00:00:00
C 2021-01-30
D 2021-01-30 00:00:00

【正确答案】D
【解析】add_months()函数返回值是日期时间类型★


【多选题】SELECT IFNULL(country,'未知') RESULT FROM worldcup语句中控制流函数IFNULL可以替换为()。
A CASE WHEN THEN ELSE END
B IF
C NVL
D NULLIF

【正确答案】A B C
【解析】NULLIF函数是判断表达式是真还是假,与IFNULL返回值不同,所以不能替换。★

【E14 GBase 8a DCL语句】 【总题量】9 题

【判断题】GBase 8a数据库用户名称大小写不敏感()
正确
错误

【正确答案】错误
【解析】
GBase 8a数据库用户名称大小写敏感

【单选题】ALL是一个特殊权限,不包含()
A PROCESS
B GRANT OPTION
C EXECUTE
D SHUTDOWN

【正确答案】B
【解析】ALL权限不包含GRANT OPTION给其他用户授权权限★


【单选题】create user bizMan identified by 'x'创建的bizMan用户可访问的客户端()
A 任意主机;
B 只能是数据库服务器本机,即localhost;
C 只能是127.0.0.1;
D 该用户在任何主机上都不能访问数据库。

【正确答案】A
【解析】新建用户bizMan等同于bizMan@%,任意主机均可登录★


【多选题】GBase 8a的权限级别包括()
A 全局级
B 数据库级
C 表级
D 列级
E 过程级

【正确答案】A B C D E
【解析】全部都正确。★

【多选题】回收用户的Role权限,正确的语句是()
A revoke role1 to bizMan@localhost;
B revoke *.role1 from bizMan@localhost;
C revoke role1 from bizMan@localhost;
D revoke "role1" from bizMan@localhost;

【正确答案】C D
【解析】revoke后面用from关键词,用户组加双引号,认为是数据库对象,要是单引号,则会认为是字符串

【多选题】授予用户权限组权限,正确的语句是()
A grant "role1" to bizMan@localhost;
B grant role1 to bizMan@localhost;
C grant "role1" from bizMan@localhost;
D grant role1 from bizMan@localhost;

【正确答案】A B
【解析】grant后面用to关键词,用户组加双引号,认为是数据库对象,要是单引号,则会认为是字符串★

【单选题】以下授权语句()是正确的
A grant select on * to bizMan@localhost
B grant select courseware.* to bizMan@localhost
C grant select on courseware.* to bizMan@localhost
D grant select on courseware.* to user bizMan

【正确答案】C
【解析】
“grant select on * to bizMan@localhost”错误在于只有一个*;“grant select courseware.* to bizMan@localhost”错误在于缺少on关键词;“grant select on courseware.* to user bizMan”错误在于多了user。★

【多选题】以下授予表插入数据权限的语句正确的是()
A grant insert("ID") on courseware.test01 from bizMan@localhost;
B grant insert(ID) on courseware.test01 to bizMan@localhost;
C grant insert("ID") on *.test01 to bizMan@localhost;
D grant insert("ID") on courseware.test01 to bizMan@localhost;

【正确答案】B D
【解析】
“grant insert("ID") on courseware.test01 from bizMan@localhost;”错误在于grant后面的关键词应该是to;“grant insert("ID") on *.test01 to bizMan@localhost;”的错误在于表级权限在数据库级权限下,需写明具体的数据库。★


【单选题】收回表插入数据权限语句以下正确的是()
A revoke insert("ID") on courseware.test01 to bizMan@localhost;
B revoke insert(ID) on *.test01 from bizMan@localhost;
C revoke insert(ID) on courseware.test01 from bizMan@localhost;
D revoke insert(ID) on courseware.test01 to bizMan@localhost;

【正确答案】C
【解析】revoke后面用from关键词,表级权限需写明具体的数据库名称★

【E15 GBase 8a 数据库系统表】 【总题量】7 题

【单选题】显示当前数据库版本,正确的语句是()
A select version;
B select versions();
C select version();
D show version;

【正确答案】C
【解析】version()函数返回数据库版本信息

【单选题】中止连接当前执行的语句,但是不中止该连接本身,正确的语句是()
A kill query 3789
B kill 3789
C pause 3789
D CONTINUE 3789

【正确答案】A
【解析】需加QUERY参数,中止连接当前执行的语句,但是不中止该连接本身。★


【单选题】查看正在运行的线程,与SHOW PROCESSLIST等价的语句是()
A select * from gbase.processlist;
B select id,user,host,db,command,time,state,info from
information_schema.processlist;
C select id,user,host,db,command,time,state,info from performance_schema.processlist;
D select * from processlist;

【正确答案】B
【解析】SHOW PROCESSLIST与information_schema.processlist表查询的内容一致★


【单选题】获取用户组Role和用户User关系信息需要查询()系统表
A gbase.user
B gbase.user_check
C gbase.role_edges
D gbase.roleanduser

【正确答案】C
【解析】gbase.role_edges表记录用户组Role和用户User关系信息★

【多选题】STUDENT表分片有一个副本,以下()语句等价于SELECT COUNT(*) FROM STUDENT
A SELECT COUNT(1) FROM STUDENT;
B select TABLE_SCHEMA,TABLE_NAME, TABLE_ROWS
from performance_schema.tables
where TABLE_SCHEMA='courseware' and TABLE_NAME='student';
C select TABLE_SCHEMA,TABLE_NAME, TABLE_ROWS/2
from performance_schema.tables
where TABLE_SCHEMA='courseware' and TABLE_NAME='student';
D select TABLE_SCHEMA,TABLE_NAME, TABLE_ROWS/3
from performance_schema.tables
where TABLE_SCHEMA='courseware' and TABLE_NAME='student';

【正确答案】A C
【解析】COUNT(*)与COUNT(1)都表示总条数;performance_schema.tables保存的是所有分片的表条数,由于有一个副本,2倍数据,需要TABLE_ROWS除以2★


【单选题】()表存储哈希键值与nodeid的对应关系。GBase 8a数据库引擎根据计算出的hash值确定数据存储在哪个节点上。
A gbase.audit_log
B gbase.nodedatamap
C gbase.proc
D gbase.time_zone

【正确答案】B
【解析】gbase.nodedatamap表存储哈希键值与nodeid的对应关系。★


【单选题】和SHOW VARIABLES LIKE 'gbase_sql%'等价的语句是()
A SELECT variable_name, variable_value from
information_schema.global_variables where variable_name like 'gbase_sql%';
B SELECT * from information_schema.global_variables where variable_name like 'gbase_sql%';
C SELECT variable_name, variable_value from global_variables where variable_name like 'gbase_sql%';
D SELECT name, value from global_variables where variable_name like 'gbase_sql%';

【正确答案】A
【解析】★


以下关于粗粒度智能索引描述正确的是()?
A 免维护,自动建立。
B每一列数据都会生成一个粗粒度智能索引。
C索引的建立和维护对资源的消耗可以忽略不
计。
D记录DC内的最大值、最小值、空值、求和值
等。
答案ACD

以下针对GBase Sa集群数据库中DC的描述正确的是(
)?
ADC是基本的I/O单位
B每个DC自动封装和压缩
C每个DC包含65535行数据
D DC尾块不压缩
答案ABD

GBase 8a集群数据库主要应用于()?
A用户业务系统
B数据仓库系统
C商业智能系统
D决策支持系统
答案BCD

8a数据库的压缩支持()?
A按库压缩
B 按表压缩
C按列压缩
D按行压缩
答案ABC

Coordinator节点需要分别连接数据网络和业务网段。
)
A正确
B 错误
答案A

支持联邦架构和多分片的gbase 8a版本是()?
A V83
B v85
Cv86
D v95

答:CD

集群中负责各节点实例间共享信息,并在多副本操作
中,控制各节点数据一致性状态的组件是()?
A gnode
Bgcware
C:gcluster
Dsyncserver
答案B

Coordinator节点可以与datanode节点部署于不同IP网
段。()
A正确
B 错误
答案A

下列有关demo options 初始管理员为root 密码为空 setsysenv.py脚本描述正确的是 license注册

下列有关demo.options文件描述正确的是()?
Ademo.options是安装集群的配置文件
B该文件用于指定各集群节点角色
C扩容操作需要使用该文件
D在demo.options文件中写明密码即代表所有节
点所使用的密码一致
答案ABCD

GBase 8a集群数据库安装成功后,数据库的初始管理员为root,密码为空。()
A正确
B错误
答案:A

下列有关SetSysEnvpy脚本描述正确的是()?
A每个节点安装前都要执行该脚本
B该脚本由DBA用户操作执行
Cgroup参数是可选项
D运行产生的日志文件存在/tmp目录下
答案ACD

GBase 8a集群需要以root用户身份进行各节点的license注
册。(
)
A正确
B错误
答案 B
答案解析
各节点的license注册使用DBA账户完成。

GBase8a集群数据库安装前,需要为安装用户开放哪些
目录的权限(
)?
A集群的安装目录
B/root目录
C/tmp目录
D/home 目录
答案AC
答案解析
集群各节点的安装目录要允许安装用户远程写入数据库
文件。而/tmp目录则会在安装数据库时存放安装过程中
的日志文件。所以这两个目录都要开放相应权限。

升级备份文件用于进行升级回退操作。()
A正确
B 错误
答案A
答案解析
有升级备份文件还要满足如下条件才能实现回退操作:
升级完成后,没有执行过DDL、DML、扩容、生成新
distribution操作,没有生成新的FEVENTLOG

升级备份文件用于进行升级退回操作 升级命令是一样的 v95 v86 集群架构一致 需要停掉所有节点的集群服务

数据库升级分为架构相同的数据库版本升级和架构不同的数据库版本升级,两者使用的升级命令是一样的。(
)
A正确
B 错误
答案A
|答案解析
虽然集群架构相同的升级和集群架构不同的升级命令相
同,但两者的执行理念不同。集群架构不同的升级需要
对demo.options文件进行重新编辑,保证集群升级前后的
集群角色和架构逻辑不变。

v95版本数据库的兼容模式与v86版本数据库的集群架构
一致。(A)
A正确
B 错误

集群升级前,需要停掉所有节点的集群服务。
()
A正确
B 错误
答案A

集群角色集群规模也必须相同 默认储存在集群安装目录 集群升级成功后 DDL DML 无法进行升级回退操作

数据库升级时,新旧版本的集群角色必须一致且集群规模也必须相同。()
A正确
B 错误
答案A


升级备份文件,默认存储在集群安装目录。()
A正确
B 错误
答案B
答案解析
升级备份文件默认存放在DBAUser的home目录下。

集群升级成功后,执行过DDL、DML、扩容、生成新
distribution或产生数据不一致情况,就无法进行升级回
退操作了。()
A正确
B 错误
答案A
答案解析
有升级备份文件还要满足如下条件才能实现回退操作:
升级完成后,没有执行过DDL、DML、扩容、生成新
distribution操作,没有生成新的FEVENTLOG


运行在非Coordinator节点的命令行客户端,必须使用
“-h”参数。()
A正确
B 错误
答案A
答案解析
gccli-h 参数用于指定通过哪个服务器登录数据库,除非
数据库客户端与登录服务器在同一节点,否则需要指定
-h参数指明要登录的服务器。


集群的coordinator节点内嵌了客户端,服务器和DBMS,
()
A正确
B错误
答案A

企业管理器GBaseDataStudio能够实现以下哪些功能(
)?

A查看集群环境日志总数
B 创建和删除用户
C管理多个集群
D执行SQL脚本
答案ABCD
答案解析
企业管理器作为集群的图形化客户端,可以实现各种数
据库操作并可视化数据库对象

企业管理器GBaseDataStudio中的审计管理栏记录哪些日
志()?
据库
A 跟踪日志
B 审计日志
C错误日志
D加载日志
答案ABC
答案解析
审计管理栏包含:审计日志、错误日志、跟踪日志、数据库启停日志。

以下关于企业管理器GBaseDataStudio说法正确的是(
)?
A通过JDBC连接数据库
B 可以用它执行加载操作
C它是8a数据库的图形化客户端
D它只能用在windows系统平台
答案ABC

以下有关8a集群初始化之前可运行的操作描述正确的是
()?
A可以查看系统数据库
B可以创建数据库
可以创建账户
能够删除数据
答案A
答案解析
只有初始化后,数据库才能将数据写入相对应的数据分片。


gcadmin能查询的管理日志包括()?
A DDLevent
B DMLevent
C DCLevent
D DDLstorageevent
答案AB
答案解析
能够查看的日志是:DDLeventDMLevent和
DMLstorageevent

gcluster_services allinfo命令有可能查看到以下哪些进程
()?
A gcware
Bgcluster
Cgcrecover
Dgcmmonit
答案ABC

[gbase@node131~]$ gcluster_services all info
gcware is running
gcluster is running
gcrecover is running
gbase is running
syncserver is running

监控集群模组工作状态的工具是(()?
A nmon
Bgcmmonitor
Cgcmonitor
Dgcluster services all info
答案C
答案解析
gcmonitor监控以下进程:gclustergcware
gcrecovergcmmonitgbase syncserver
gcmmonitor监控gcmonitor。


当集群管理节点出现数据不一致时,应如何定位问题
)?
A gcadmin showddlevent
B gcadmin showdmlevent
gcadmin showdmlstorageevent
D查看网络
答案A

有关gcluster services all stop命令,描述正确的是(()?
A 关闭整个集群服务
B只有操作系统管理员root可以使用
C仅关闭当前节点的集群进程
D关闭的集群进程会自动被gcmonitor拉起
答案C

GBase 8a MPP Cluster v9版本增加虚拟集群的概念,当没
有多个VC情况下,8a集群为兼容模式,会默认包括一个
VC,id是vc00001,在访问路径中可以省略。()
A正确
B错误
答案A

GBase 8a MPPCluster支持的DECIMALMD)类型,其
中M是总位数,最大支持()位
A 16
B 18
C 64
D 65
答案 D
答案解析
GBase 8a MPPCluster支持的DECIMALMD)类型,其中M是总位数,最大支持65位★


GBase 8a MPP Cluster中,关于SQL描述错误的是(CD)
A SOL的关键词不区分大小写,例如SELECT和
select都可以正确执行。
B 默认SOL 执行采用自动提交方式,跟oracle默
认非自动提交不同,不用单独写commit语句。
C数据库、表、列等标识符名称默认支持的字符
为字母,数字、 下划线,中文组合,名称长
度有最大长度限制。
D 数据库、表、列等标识符名称中包括特殊字符
或关键词时,需要加"反引号包围,例如`gs-
table.gs-column`。


GBase 8a MPP Cluster支持数据类型中,()类型不能
有DEFAULT 值。
A DECIMAL
B TEXT
BLOB
LONGBLOB
答案BCD
| 答案解析
大对象类型不支持DEFAULT 值,像TEXTBLOB和
LONGBLOB,★


DECIMAL类型是严格的数值数据类型,建表语句create
table t(i int. j decimal);中,没有具体写DECIMAL位数,
则默认是()位
A0
B 10
C 18
D 65
答案B
答案解析
DECIMAL默认是DECIMAL(10,0)★


目前GBase 8a的hash分布列支持哪几种数据类型()
Avarchar
B char
Cint
Ddecimal
答案ACD
答案解析
hash分布列支持当前只支持整数类型、varchardecimal
数据类型



当t1表是复制表时,执行CREATE TABLEt2 LIKE t1;则t2
表是()
Ahash分布表
B 随机分布表
c复制表
D分区表
答案C
答案解析
CREATE TABLELIKED以复制表结构包含表的分布类
型。


使用ALTERTABLE语句能修改表字段的()
A 数据类型
B 默认值
Cvarchar类型的长度
D名字
答案CD
答案解析
ALTER TABLE语句不支持改变列的数据类型,改变列
的属性(NOT NULL,默认值)、改变表的字符集;可
改变列的长度,只能变大,不能变小;可改变名称★


hash分布表中的被选为distributedby列字段,不能被(
)操作。
Adelete
Bupdate
Cinsert
D以上三种
答案 B
|答案解析
hash分布表中的分布列字段,不能被update更新,语法会
报错,★



对临时表描述错误的是()
A使用关键词TEMPORARY
B 被限制在当前连接中,当连接关闭时,临时表
会自动被删除。
临时表跟表类型无关,可以建成随机分布临时
表,也可以建成复制临时表。
临时表跟表操作命令一样,支持所有 DDL 及
DML 操作。
答案D
答案解析
临时表不支持ALTERTABLE,★



建表语句create table tbid intname varchar(50)c
int)REPLICATED;创建的是()表?
A 分布表
B临时表
c复制表
d分区表
答案C
| 答案解析
REPLICATED表示创建的是复制表★


建表语句 create table t(a intb varchar(50)c int),未写明
特别的关键字,则创建的是()表?
A 分布表
B 临时表
C复制表
D 分区表;
答案A
答案解析
未写明特别的关键字的建表语句,则创建的是随机分布
表。★


GBase 8a MPPCluster支持对视图进行()操作。
A delete
Bupdate
Cinsert
Dselect
答案 D
答案解析
禁止对视图进行INSERT,UPDATE和DELETE 操作。

hash索引列不支持数据类型是()。
A DECIMAL
BTEXT
CBLOB
DVARCHAR
答案BC
答案解析
hash分布列支持当前只支持整数类型、varchar,decim
数据类型


GBase 8aMPPCluster支持的索引有
A智能索引
B聚簇索引
C全文索引
Dhash索引
答案ACD
答案解析
8a不支持聚簇索引★


GBase 8a MPP Cluster执行SQL命令,DDL和DML执行步
骤不同点:()
A一条DDL命令会在所有gcluster管理节点和
gnode计算节点执行。一条DML命令由GCluster
发起节点下发给gnode计算节点,各计算节点
执行DML命令更新数据,然后返回结果给发起
管理节点。
BDDL和DML语句首先发给所有管理节点,然后
再下发到各个计算节点。
DDL仅在所有管理节点上执行;DML语句仅在
计算节点上执行。
DDDL和DML语句首先发给GCluster发起节点,
再下发到各个计算节点。
答案A
答案解析
一条DDL命令会在所有gcluster管理节点和gnode计算节
点执行。一条DML命令由GCluster发起节点只下发给
gnode计算节点,各计算节点执行DML命令更新数据,
然后返回结果给发起管理节点。



以下INSERT语句正确的是()
A INSERT INTO score(sidscore)VALUES(1
80);
B INSERT INTO score (sid,score)VALUE(180);
CINSERT score(sidscore)VALUES((180).(2
76.(391).(4,86)(5,89));
D INSERT score(sid,score)VALUES(180),(2
76).(3,91).(4,86).(5,89);
答案AD
答案解析
value后要有s;插入多个值时,元组集合外不用再加一
层圆括号★


数据操作语句DML包含(()
ASELECT
B INSERT
CDELETE
DUPDATE
答案BCD
答案解析
DML不包含SELECT查询语句。★

GBase 8a的DELETE操作会实际删除数据,重新创建智
能索引,所以删除数据操作的性能较低。
A正确
B 错误
答案B
答案解析
GBase 8a的DELETE操作会打删除标记,不实际删除数据。

哈希分布表中被定义为distributedby的字段,不能做
)操作。
A delete
Bupdate
Cinsert
D以上三种
答案B
答案解析
哈希分布表中的hash列字段,不能做update操作★

Student包含SId,Sname,SdeptSage等字段,以下
INSERT语句正确的是()
A INSERT Student(SIdSname) SELECTuser id
user_Name FROM user info
BINSERTINTO Student(SIdSnameSELECT
user_id,user_Name FROM user_info
INSERT INTO Dept_age(SdeptAvg_age)
SELECT SdeptAVG(Sage)FROM Student
GROUP BY Sdept
D INSERT INTO Student SELECT user id,
user Name FROM user_info
答案ABC
答案解析
表名后不写明要插入的列是错误的★


哈希分布表的哈希列的约束是()
A哈希列的值不能是空值。
B哈希列只支持1列。
C哈希列的值支持的数据类型是整型
DECIMAL或VARCHAR
DUPDATE语句不能改写哈希列的值。
答案CD
答案解析
v95版本的8a支持hash列可以是nul1值和多列hash。★


COUNT(*)和COUNT(colName结果()
A 完全相同。
B colName列存在NULL值时,不同。
C总是不同。
D由表类型(哈希分布表、随机分布表)决定。
答案B
答案解析
有nul1值时,二者查询的条数不同。COUNT(coIName)只
记录不含nul1值的条数。★

使用union或union al1时,需()
A 必须保证各个select集合的结果有相同个数的
列。
B 必须保证各个select集合相同次序上的列名相
同。
C必须保证各个select集合对应的列类型是一样
的。
D 各个select集合相同次序上的列名可以不同。
答案ACD
答案解析
各个select集合投影列相同次序上的列类型一致,个数
一致,列名可以不同,以第一个select列名显示。


GBase 8a MPP Cluster执行单个复制表DQL语句,会下发
到(计算节点上
A 所有
B指定
C随机一个
D以上皆非
答案C
| 答案解析
每个节点都有复制表,随机选择一个节点执行即可。★

where和having用法区别
Awhere中不能有列的别名,having中可以操作列
的别名。
B WHERE子句用来筛选FROM子句中指定的数
据集。HAVING 子句用来从分组的结果中筛选
行。
Cwhere中不能有聚合函数,having中可以有聚合
函数。
D执行的顺序不一样:where的搜索条件是在进
行分组之前执行;having的搜索条件是在分组
后执行的。
答案BCD
答案解析
having子句中不能有列的别名。


以下聚合语句中错误的是()
A select Ssexcount(Sno) from student group by
Ssex;
select YEAR(Sage),count(Snofrom student
group by YEAR(Sage);
select Cno, count(Sno)from student group by
Cno;
select Cno,count(Sno)from student group by
Ssex;
答案D
答案解析
有group by子句时,投影列需包括groupby后分组字段和
聚合函数。★

GBase 8a MPPCluster执行单个hash分布表select语句,
WHERE子句中只有一个hash分布列条件,语句会下发到
()计算节点上
A 所有
B 指定
C随机一个
D和条件比较值的hash运算值相匹配的
答案 D
答案解析
hash分布表能计算出数据具体落在哪个节点上,所以不
是所有节点都查询,只下发到有该数值的节点执行即
可。★


系统函数在SQL语句中,经常出现的位置在SELECT投
影列中,或者WHERE子句中的查询条件中。
A正确
B错误
答案A

NOW和SYSDATE函数的区别是O
A NOW有同义词,SYSDATE没有同义词。
BNOW取的是语句开始执行的时间,SYSDATE
取的是该函数执行的实时时间。
CNOW得到当前日期和时间,SYSDATE得到当
前日期。
DNOW得到当前时间,SYSDATE得到当前日
期。
答案B
答案解析
NOW和SYSDATE函数都能得到当前日期和时间,区别
NOW取的是语句开始执行的时间,SYSDATE取的是该
函数执行的实时时间。★


SELECTIFNULL(country"未知)RESULTFROM
worldcup语句中控制流函数IFNULL可以普换为(
A CASE WHEN THEN ELSE END
B IF
CNVL
DNULLIF
答案ABC
答案解析
NULLFF函数是判断表达式是真还是假,与IFNULL返回
值不同,所以不能替换。★


查询日期月份最后一天,以下语句哪些是正确的
A select last day(2019年2月10日)
B select last day(2019-2-1012:10:30
select last day(19-02-10)
select last day(190210)
E 以上皆错
答案BCD
答案解析
含中文字符日期不是标准可支持的日期类型格式★


求距离月底还有多少天,正确的语句是()
A SELECTDATEADDLAST DAYNOWO)
NOWO);
B SELECTDATEDIFFLAST DAYNOWO)
NOWO);
SELECT DATESUBLAST DAYNOWO)
NOWO):
SELECT DATEDIFFNOWO
LAST DAY(NOWO));
答案B
答案解析
DATEDIFFLAST DAYNOWO)NOWO)得到了天数为
正数,DATEDIFFNOWO.LAST DAYNOWO))得到的
天数为负数。★

显示”2021年03月16日"这样的日期格式,正确的SQL语
句是()
A SELECTDATE FORMAT(sysdate%y年%m
月%日)
BSELECT DATE FORMAT(sysdate%Y年%m
月%d日)
CSELECT DATE FORMAT(sysdate%Y年%0m
月%d日)
DSELECTDATE FORMAT(sysdate%Y年
%mm月%dd日)
答案B
| 答案解析
根据日期格式规则,正确答案为SELECT
DATE FORMAT(sysdateO%Y年%m月%日.%Y代表
4位的年,%m代表2位的数字月,%d代表2位的天


SELECT add months(2020-12-30,1);的执行结果
A 2020-01-30 00:00:00
B 2020-11-3000:00:00
C2021-01-30
D2021-01-30 00:00:00
答案 D
答案解析
add months()函数返回值是日期时间类型*


数据库字符集是UTF8,SELECTLENGTH(南大通用娄
据)执行结果是()
A 12
B 6
C18
D 10
答案C
答案解析
LENGTHO函数返回值是字节个数,默认是UTF8字符
集,一个汉字为3个字节存储,则结果为18★

统计2012(含)年后出生的学生,以下()语句正确并
且执行效率最高。
A select SId.Sname.Sage from student where
to_char(Sage,'YYYY')>= 2012;
B select SId, Sname,Sage from student where Sage
>=to date('2012-1-1)
Cselect SId. Sname, Sage from student where Sage
>=to date(2012-1-1YYYY-MM-DD
D select SId, Sname, Sage from student where
to_char(Sage,'YYYY)>2012;
答案 C
答案解析
where条件中使用函数尽量在值上,不要在字段上使用函
数,这样少执行函数次数,提高性能。B结果不对是
to date函数有两个参数,只写了一个参数。★


关于NULL的叙述,()是错误的
A NULL值表示“没有数据”,值未知,值不确
定,不占空间。
B NULL的拼写,大小写无关。
CSELECT count(SageFROM Student统计表包括
NULL值的总条数。
DNULL和UNKNOWN 是等价的。
答案C
答案解析
count(Sage)不统计表中该字段为NULL值的条数


SELECTLAST DAY(0000-12-1)运行的结果()
A 0-12-31
B 0000-12-31
C0000-12-30
DNULL
答案D
答案解析
'0000-12-1'不是一个正确的日期,返回值为NULL。★


SELECT CHAR LENGTHC南大通用数据)执行结果是
()
A 12
B 6
C18
D10
答案B
答案解析
CHAR LENGTHO函数返回值是字符个数,则结果为
6.★



字符串连接语句正确的是(()
A select'我已使用 20 "天GBase 8a
B select"我已使用+'20'+"天GBase 8a
C select concat我已使用20"天GBase 8a'
Dselect concat(我已使用20"天GBase 8a
答案ACD
答案解析+为数值相加,没有字符串拼接的功能。

以下条件分支语句正确的是()
A CASE Ssex WHEN男'THEN'帅哥WHEN'女
THEN'美女'ELSE"不明
B CASE Ssex WHEN'男THEN'帅哥WHEN'女
THEN'美女ELSE'不明END
CASE Ssex WHEN男THEN帅哥WHEN"女
THEN'美女'END
CASE WHEN Ssex=男'THEN'帅哥WHEN
Ssex='女'THEN'美女'ELSE"不明END
答案BCD
答案解析
语句末尾要有END★

GBase 8a的权限级别包括
A 全局级
数据库级
表级
列级
E 过程级
答案ABCDE
答案解析
全部都正确。★

GBase 8a数据库用户名称大小写不敏感
A正确
B错误
答案 B
答案解析
GBase 8a数据库用户名称大小写敏感

ALL是一个特殊权限,不包含()
A PROCESS
B GRANTOPTION
CEXECUTE
DSHUTDOWN
答案 B
I 答案解析
ALL权限不包含GRANTOPTION给其他用户授权权限*


和SHOW VARIABLES LIKE'gbase sq1%"等价的语句是
()
A SELECTvariable namevariable value from
information schema.global variables
where variable name like'gbase sq1%';
B SELECT*from
information schema.global variables
where variable name like'gbase sq1%
C SELECTvariable namevariable value from
global variables where variable name like
'gbase_sq1%';
DSELECT name,value from global variables
where variable name like 'gbase sq1%
答案A
|答案解析

STUDENT表分片有一个副本,以下()语句等价于
SELECT COUNT(*) FROM STUDENT
A SELECT COUNT(1) FROM STUDENT
B select TABLE SCHEMATABLE NAME
TABLE ROWS
存储
from performance schema.tables
where TABLE SCHEMA=coursewareand
TABLE NAME='student:
C select TABLE SCHEMATABLE NAME.
TABLE ROWS/2
from performance schema.tables
where TABLE SCHEMA=coursewareand
TABLE NAME='student';
iselect TABLE SCHEMATABLE NAME
TABLE ROWS/3
from performance schema.tables
where TABLE SCHEMA=coursewareand
TABLE NAME='student:
答案AC
答案解析
COUNT(*)与COUNT(1)都表示总条数;
performance schema.tables保存的是所有分片的表条
数,由于有一个副本,2倍数据,需要TABLE ROWS除


查看正在运行的线程,与SHOW PROCESSLIST等价的
语句是()
A select* from gbase.processlist;
B select
id,user,host,db.commandtimestateinfo
from
information_schema.processlist;
select
iduserhost,dbcommandtimestateinfo
from performance schema.processlist;
D
select*from processlist;
答案 B
答案解析
SHOWPROCESSLIST与
information schema.processlist表查询的内容一致★

()表存储哈希键值与nodeid的对应关系。GBase8a
数据库引擎根据计算出的hash值确定数据存储在哪个节
点上。
A gbase.audit log
B gbase.nodedatamap
C gbase.proc
Dgbase.time zone
答案B
答案解析
gbase.nodedatamap表存储哈希键值与nodeid的对应
关系。★

60、gcrecover 先恢复 DDL 操作,然后调用同步服务gc sync server 恢复数据(判断题,1分)
正确




最后修改时间:2023-04-28 17:25:21
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论