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

GBase 8a 学习笔记 018 —— 学习集锦3

心有阳光 2023-03-13
811
  • GBase 8a MPP Cluster中,关于 SQL 的描述
    • SQL 的关键词不区分大小写,例如 SELECT 和 select 都可以正确执行;
    • 默认 SQL 执行采用自动提交方式,跟 oracle 默认非自动提交不同,不用单独写commit语句;
    • 需要设置 gcluster_extend_ident 参数为1时,才支持中文库名、表名,默认些参数为0,不支持中文;
    • 数据库、表、列等标识符名称中包括特殊字符或关键词时,每个对象需要加``反引号包围,例如gs-table.gs-column,不能加在一起;
  • GBase 8a MPP Cluster v9 版本增加虚拟集群的概念,当没有多个VC情况下,8a集群为兼容模式,会默认包括一个VC,id是vc00001,在访问路径中可以省略;
  • GBase 8a MPP Cluster 中,使用@开头的变量是用户变量;
  • GBase 8a MPP Cluster 支持的DATETIME类型,支持的最小时间单位是微秒;
  • GBase 8a MPP Cluster 支持的数据类型中,大对象类型不能有 DEFAULT 值,如TEXT、BLOB、LONGBLOB;
  • GBase 8a MPP Cluster 支持的 DECIMAL(M,D) 类型,其中M是总位数,最大支持65位;
  • 使用 ALTER TABLE 语句能修改表字段的
    • varchar 类型的长度;
    • 名字;
    • 可改变列的长度,只能变大,不能变小;
    • 不支持
      • 改变列的数据类型
      • 改变列的属性(NOT NULL,默认值)
      • 改变表的字符集
  • 目前 GBase 8a 的hash分布列支持的数据类型
    • int 整数类型
    • varchar
    • decimal
  • 当 t1 表是复制表时,执行create table t2 like t1;则 t2 表是复制表;
  • drop table 和 truncate table 可以释放数据占用的空间;
  • hash 分布表中的被选为distributed by 列字段,不能被 update 操作;
  • 当客户端连接上 GBase 8a MPP Cluster 数据库后,执行 use database_name SQL 命令切换到指定数据库下;
  • 索引是在基本表的列上建立的一种数据库对象,它同基本表分开存储,使用它能够加快数据的 select 速度;
  • hash 索引列不支持数据类型是text、blob,当前只支持整数类型、varchar、decimal数据类型;
  • 查询视图跟查询表操作一样,使用 show tables;命令可查询视图名称;
  • 数据操作语句DML包含
    • insert
    • delete
    • update
  • GBase 8a MPP Cluster 执行 SQL 命令,DDL 和 DML 执行步骤不同点:
    • 一条 DDL 命令会在所有 gcluster 管理节点和 gnode 计算节点执行。
    • 一条DML命令由 gcluster 发起节点下发给 gnode 计算节点,各计算节点执行DML命令更新数据,然后返回结果给发起管理节点。
  • 哈希分布表的哈希列的约束是
    • 哈希列的值支持的数据类型是整型、decimal 或 varchar
    • update 语句不能改写哈希列的值
    • v95版本的8a支持hash列可以是null值和多列hash
  • insert
    • insert into score(sid,score) values (1,80);
    • insert score(sid,score) values (1,80),(2,76),(3,91),(4,86),(5,89);
    • values后要有s;插入多值时,元组集合外不用再加一层圆括号;
  • student包含SId,Sname,Sdept,Sage等字段,insert
    • insert Student(SId,Sname) select user_id,user_name from userinfo
    • insert into Student(SId,Sname) select user_id,user_Name from user_info
    • insert into Dept_age(Sdept,Avg_age) select Sdept,AAVG(Sage) from Student GROUP BY Sdept
  • 哈希分布表中被定义为distributed by的字段,不能做update操作;
  • 快速update模式,需要开启 gbase_fast_update 参数开关;
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

文章被以下合辑收录

评论