随笔分类 -  SQL

上一页 1 ··· 3 4 5 6 7
摘要:通过with子句,我们可以把很多原本需要存储过程来实现的复杂逻辑用一句SQL来进行表达。KingbaseES 从V008R006C004B0021 版本开始,支持 with function 语法。例子如下: with function f_sum(i_relnamespace oid,i_reln 阅读全文
posted @ 2021-09-13 14:12 KINGBASE研究院 阅读(137) 评论(0) 推荐(0) 编辑
摘要:用户在使用中,可能会用到基于函数的索引,但是函数是非 immutable 类型的,导致函数索引无法创建。如: test=# create index ind_t1 on t1(to_char(create_date,'yyyy-mm')); ERROR: functions in index exp 阅读全文
posted @ 2021-09-10 17:22 KINGBASE研究院 阅读(398) 评论(0) 推荐(0) 编辑
摘要:关键词:Oracle , SQL Server,MYSQL,Postgresql,KingbaseES 不同数据库支持的日期时间类型数据的格式不同,用户在迁移至KingbaseES 需要选择正确的时间类型。本文以例子形式展示5种数据库时间类型上的差异。 1、Oracle Oracle 只支持 dat 阅读全文
posted @ 2021-09-08 17:02 KINGBASE研究院 阅读(1623) 评论(0) 推荐(0) 编辑
摘要:在SQL标准中字符串是用单引号括起来的,在KingbaseES中遵守了该标准,如果在字符串中需要使用到单引号,就需要对其进行转义。 方式一:使用E和反斜杠进行转义 方式二:直接用一个单引号来转义 在KingbaseES数据库 oracle 模式中还支持使用 Q'' 来对特殊字符进行转义: 格式:q' 阅读全文
posted @ 2021-08-23 15:37 KINGBASE研究院 阅读(574) 评论(0) 推荐(0) 编辑
摘要:KingbaseES 内置了对于insert all / first 语法的支持。 一、数据准备 create table t1(product_id number, product_name varchar2(80),month number); create table t2(product_i 阅读全文
posted @ 2021-08-06 19:00 KINGBASE研究院 阅读(309) 评论(0) 推荐(0) 编辑
摘要:使用过Oracle的都知道,Truncate操作由于不需要写redo日志,因此,在性能上会比delete操作更高效,但在实际使用过程中,有时会发现delete比truncate速度更快。以下介绍下二者的机制,让大家对二者有清晰的了解。 一、大数据量删除操作 1、数据准备 创建两张没有索引的大表:t1 阅读全文
posted @ 2021-08-02 17:34 KINGBASE研究院 阅读(371) 评论(0) 推荐(0) 编辑
摘要:MySQL 的hex 和 unhex 函数类似于KingbaseES 的encode 和 decoding,实现字符与16进制之间的转换。 一、先看MySQL例子 mysql> select hex('kingbase'); + + | hex('kingbase') | + + | 6B696E6 阅读全文
posted @ 2021-07-28 09:37 KINGBASE研究院 阅读(480) 评论(0) 推荐(0) 编辑
摘要:KingbaseES 通过扩展插件支持了pivot 和unpivot 功能。以下以例子的方式介绍。 一、功能介绍 创建扩展: create extension kdb_utils_function; 具体功能: pivot(聚合函数 for 列名 in (类型)),其中 in ('') 中可以指定列 阅读全文
posted @ 2021-07-24 15:39 KINGBASE研究院 阅读(885) 评论(0) 推荐(0) 编辑
摘要:对于Oracle ,一条tuple 的 rowid正常是不会变化的(引发row movement的操作除外,如:跨分区迁移update,表收缩),因此,应用设计上可以方便的使用rowid,加快访问速度。对于KingbaseES,同样也有ctid,格式 “(blockid,slotid)”,通过cti 阅读全文
posted @ 2021-06-22 19:10 KINGBASE研究院 阅读(140) 评论(0) 推荐(0) 编辑
摘要:KingbaseES 数据库提供了 kdb_schedule 扩展,使得用户能通过类似oracle job 的方式进行job调用。kdb_schedule 提供了三个Schema :dbms_job and dbms_scheduler 分别类似于 oracle 的 dbms_job 和 dbms_ 阅读全文
posted @ 2021-06-22 16:13 KINGBASE研究院 阅读(349) 评论(0) 推荐(0) 编辑
摘要:对于递归查询,KingbaseES 用户可以选择使用connect by ,或者使用 with recursive 。下面,我们举例来看下二者的差别。 一、构造数据 create table test_recursive(id integer,pid integer,name varchar,des 阅读全文
posted @ 2021-06-19 15:37 KINGBASE研究院 阅读(765) 评论(0) 推荐(0) 编辑
摘要:Postgresql 支持会话级别的临时表,表的存续期只在创建临时表的会话存活期间,会话退出后,临时表自动删除,表结构及数据也无法跨会话共享。KingbaseES 除了支持PG原生的临时表机制外,还支持类似oracle 的临时表机制,也就是全局临时表。全局临时表支持表结构共享,避免用户每次了都需要创 阅读全文
posted @ 2021-06-16 16:11 KINGBASE研究院 阅读(788) 评论(0) 推荐(0) 编辑
摘要:KINGBASE 兼容Oracle 语法,实现了merge into 的功能。以下以例子的形式,介绍merge into语法的使用。以下例子在V8R6 ,且 database_mode=oracle 环境下验证过,database_mode=pg 不支持merge into 语法。 一、创建测试数据 阅读全文
posted @ 2021-06-03 18:38 KINGBASE研究院 阅读(1048) 评论(0) 推荐(0) 编辑

上一页 1 ··· 3 4 5 6 7
点击右上角即可分享
微信分享提示