数据库管理-第213期 HaloDB-Oracle兼容性测试03(20240625)

数据库管理213期 2024-06-25

  • 数据库管理-第213期 HaloDB-Oracle兼容性测试03(20240625)
    • 1 索引
      • 1.1 B-Tree索引
      • 1.2 Hash索引
      • 1.3 复合索引
      • 1.4 唯一索引
      • 1.5 表达式索引
      • 1.6 部分索引
    • 2 视图
    • 3 表连接
      • 3.1 内连接
      • 3.2 左/右外连接
      • 3.3 全连接
      • 清理环境:
    • 4 聚合函数
    • 5 窗口函数
    • 总结

数据库管理-第213期 HaloDB-Oracle兼容性测试03(20240625)

作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Pro: Database(Oracle与MySQL)
PostgreSQL ACE Partner
10年数据库行业经验,现主要从事数据库服务工作
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP、认证技术专家、年度墨力之星,ITPUB认证专家、专家百人团成员,OCM讲师,PolarDB开源社区技术顾问,HaloDB外聘技术顾问,OceanBase观察团成员,青学会MOP技术社区(青年数据库学习互助会)技术顾问
圈内拥有“总监”、“保安”、“国产数据库最大敌人”等称号,非著名社恐(社交恐怖分子)
公众号:胖头鱼的鱼缸;CSDN:胖头鱼的鱼缸(尹海文);墨天轮:胖头鱼的鱼缸;ITPUB:yhw1809。
除授权转载并标明出处外,均为“非法”抄袭

空了两期,今天继续HaloDB-Oracle兼容性测试,这次把之前测试表都清理了。

1 索引

1.1 B-Tree索引

CREATE TABLE halo_test (
a SERIAL,
b NUMERIC
);
CREATE INDEX a_btree ON halo_test (a);drop table halo_test;

image.png

1.2 Hash索引

CREATE TABLE halo_test (
a SERIAL,
b NUMERIC
);
CREATE INDEX a_hash ON halo_test USING HASH (a);drop table halo_test;

image.png

1.3 复合索引

CREATE TABLE halo_test (
a SERIAL,
b NUMERIC
);
CREATE INDEX a_cobime ON halo_test (a, b);
select * from pg_indexes where tablename='halo_test'; drop table halo_test;

image.png

1.4 唯一索引

CREATE TABLE halo_test (
a SERIAL,
b NUMERIC
);
CREATE UNIQUE INDEX a_unique ON halo_test (a);
select * from pg_indexes where tablename='halo_test'; drop table halo_test;

image.png

1.5 表达式索引

CREATE TABLE halo_test (
a SERIAL,
b NUMERIC
);
CREATE INDEX b_expr ON halo_test (trunc(b));drop table halo_test;

image.png

1.6 部分索引

CREATE TABLE halo_test (
a SERIAL,
b NUMERIC
);
CREATE INDEX b_partial ON halo_test (b) WHERE b >= 10 AND b <= 100;drop table halo_test;

image.png

2 视图

CREATE TABLE halo_test (
a SERIAL,
b NUMERIC
);
insert into halo_test(b) values(1);
insert into halo_test(b) values(200);
CREATE VIEW v_halo_test AS
SELECT b FROM halo_test WHERE b <= 100;
select * from v_halo_test;drop view v_halo_test;
drop table halo_test;

image.png

3 表连接

创建测试表:

CREATE TABLE halo_test1 (
a SERIAL,
b NUMERIC
);
CREATE TABLE halo_test2 (
c SERIAL,
d NUMERIC
);
insert into halo_test1 values(1,2);
insert into halo_test1 values(2,2);
insert into halo_test2 values(1,3);
insert into halo_test2 values(3,3);

3.1 内连接

SELECT * FROM halo_test1, halo_test2 WHERE a = c;
SELECT * FROM halo_test1 INNER JOIN halo_test2 ON a = c;

image.png

3.2 左/右外连接

SELECT * FROM halo_test1 LEFT JOIN halo_test2 ON a = c;
SELECT * FROM halo_test1 RIGHT JOIN halo_test2 ON a = c;

image.png

3.3 全连接

SELECT * FROM halo_test1 FULL JOIN halo_test2 ON a = c;

image.png

清理环境:

drop table halo_test1;
drop table halo_test2;

4 聚合函数

CREATE TABLE halo_test (
a SERIAL,
b NUMERIC
);
insert into halo_test(b) values(11);
insert into halo_test(b) values(12);
SELECT max(b) FROM halo_test;

image.png

5 窗口函数

SELECT avg(b) OVER(PARTITION BY b) FROM halo_test;drop table halo_test;

image.png

总结

本期针对HaloDB的索引、视图、表连接、聚合函数和窗口函数的Oracle数据库兼容性进行了测试,测试结果非常优秀。
老规矩,知道写了些啥。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/34911.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

Linux内核测试技术

Linux 内核是Linux操作系统的核心部分&#xff0c;负责管理硬件资源和提供系统调用接口。随着 Linux 内核的不断发展和更新&#xff0c;其复杂性和代码规模也在不断增加。因此&#xff0c;确保内核的稳定性和可靠性变得尤为重要。内核测试技术是实现这一目标的关键手段。本文将…

iptables配置NAT实现端口转发

加载防火墙的内核模块 modprobe ip_tables modprobe ip_nat_ftp modprobe ip_conntrack 1.开启路由转发功能 echo net.ipv4.ip_forward 1 >> /etc/sysctl.conf sysctl -p2、将本地的端口转发到本机端口 将本机的 7777 端口转发到 6666 端口。 iptables -t nat -A PR…

C# Winform 开源UI库

WinForms&#xff0c;作为微软.NET框架下的一个桌面应用程序开发工具&#xff0c;自1999年首次亮相以来&#xff0c;已经走过了二十多年的发展历程。它以其简单直观的拖拽式界面设计和丰富的控件库&#xff0c;成为了大众喜爱的入门学习编程工具。由于它是比较基础的开发工具&a…

Windows下如何实现微信多开/分身

新建文本文档 把下面的脚本复制到文本文档中 echo offstart "" "C:\Program Files\Tencent\WeChat\WeChat.exe" start "" "C:\Program Files\Tencent\WeChat\WeChat.exe"exit把wechat.exe的路径替换成你自已的路径 想多开几个就复制…

如何写好AI绘画提示词?保姆级教程来了!

前言 提示词编辑是一个结构化的过程&#xff0c;用能被人类解释和理解的词语来描述图像&#xff0c;也就是告诉人工智能模型应该怎么绘制图片。 生成优质图像的秘诀 1.提示词要想编辑好&#xff0c;包括修饰词和好的句子结构&#xff0c;首先你要了解所有的修饰词类型。 2.St…

SAP的RFID

射频识别 &#xff08;RFID&#xff09; 避免了条码扫描的局限性&#xff0c;条码扫描需要对每个条码进行视线访问&#xff0c;并且一次只能用于扫描一个项目。 一次扫描一个标签可能会令人厌烦和压力大&#xff0c;这会增加人为错误的机会。相反&#xff0c;RFID 标签不需要直…

紧贴国家大战略需求,聚焦当前行业热点-海云安D10入选第四届香蜜湖金融科技创新奖拟奖项目

近日&#xff0c;第四届香蜜湖金融科技创新奖终审总结会在深圳市福田区湾区国际金融科技城成功举办&#xff0c;活动现场&#xff0c;专家评审委员会最终揭晓25个拟奖项目。海云安“开发者安全助手系统”项目&#xff0c;实力入选第四届香蜜湖金融科技创新奖-优秀项目奖。 1、香…

关于导入springcloud项目一些jar加载不进去的问题处理

IntelliJ IDEA的Maven项目有时候通过右边Maven Projects面板的package或者install命令打包的时候&#xff0c;会报错导致打包失败&#xff0c;这是由于这两个命令打包前默认会运行tests测试&#xff0c;若测试失败则打包失败。但是有时候我们打包的时候一些项目配置是针对生产环…

如何解决远距离传输大文件慢的问题?

在数字化时代&#xff0c;无论是企业还是个人&#xff0c;经常需要处理跨越长距离的大规模文件传输任务。这种传输的效率和安全性对业务流程的顺畅至关重要。然而&#xff0c;我们经常遇到网络延迟、数据丢失、带宽限制等问题&#xff0c;这些都可能影响文件传输的效率。小编将…

从传统到智能:视频汇聚EasyCVR+AI视频监控如何助力仓储的智能化转型

随着物流行业的快速发展和市场竞争的加剧&#xff0c;仓储管理对于保证货物安全、提高运营效率显得尤为重要。传统的仓储监控方式已难以满足现代仓储管理的需求&#xff0c;因此&#xff0c;仓储视频智能监控解决方案应运而生。方案通过集成先进的视频监控技术、智能分析算法、…

HBDNY-40/1端子排电压继电器 DC110V 导轨安装 约瑟JOSEF

HBDNY系列端子排型电压电流继电器 系列型号&#xff1a;&#xff08;3、4过/低电压型&#xff0c;5、6过/低电流型&#xff09; HBDNY-30/1端子排型电压继电器&#xff1b;HBDNY-30/2端子排型电压继电器&#xff1b; HBDNY-30/3端子排型电压继电器&#xff1b;HBDNY-30/4端子…

Java 面试笔记 | Java 基础:线程池

前言 在日常的工作学习生活中&#xff0c;用一种好的方法去学习&#xff0c;可以更加有效&#xff0c;比如费曼学习法&#xff1a;将学到的知识用自己的组织的语言表达出来&#xff0c;如果能够清晰明白的向别人解释清楚&#xff0c;那么就说明你是真的懂了&#xff0c;学会了…

运行时库链接方式实践指南(MT、MD、MTd、MDd)

前言 笔者曾经编译一个库提供给使用者&#xff0c;提供库后发现由于运行时库连接方式不一致&#xff0c;导致使用者无法连接笔者提供的库。另一方面&#xff0c;理解和选择正确的运行时链接方式对于构建高效、可靠的应用程序至关重要。 因此&#xff0c;本文将展开运行时库的基…

新手教学系列——“笑看”单元测试(pytest)

探索单元测试的必要性 你是否曾经思考过,当前的业务场景是否真的需要单元测试?我们每个人负责的模块是否也需要单元测试?什么阻碍了我们进行单元测试呢?时间紧,任务重,还要写测试?这些都是我们在开发过程中常见的问题。假设我们有一个计划开发一周的项目,让我们看看有…

[Redis]事务

Redis事务 Redis 事务提供了一种将多个命令请求打包的功能。然后&#xff0c;再按顺序执行打包的所有命令&#xff0c;并且不会被中途打断。 但是&#xff0c;事务中的每条命令都会与 Redis 服务器进行网络交互&#xff0c;比较浪费资源 所以&#xff0c;日常开发中不建议使…

工控 UI 风格美轮美奂

工控 UI 风格美轮美奂

出现apimswincrtruntimel110dll丢失不兼容的情况如何快速修复?

在使用多种软件应用的过程中&#xff0c;我们时常面对一些技术难题&#xff0c;其中动态链接库&#xff08;DLL&#xff09;文件的兼容性问题尤为常见。这些问题不仅可能干扰应用程序的平稳运行&#xff0c;还有可能危及整个操作系统的稳定。例如&#xff0c;“api-ms-win-crt-…

九、(正点原子)Linux定时器

一、Linux中断简介 1、中断号 每个中断都有一个中断号&#xff0c;通过中断号即可区分不同的中断&#xff0c;有的资料也把中断号叫做中断线。在 Linux 内核中使用一个 int 变量表示中断号。在Linux中&#xff0c;我们可以使用已经编写好的API函数来申请中断号&#xff0c;定义…

一个土木工程专业背景的开发者,讲述开源带给他的力量

在前段时间我们举办的“TDengine Open Day”第一季技术沙龙中&#xff0c;TDengine 应用研发高级工程师谭雪峰进行的“开源之路&#xff1a;程序员的成长与探索”主题分享获得了众多参会者的好评。谭雪峰从自身独特的职业发展经历出发&#xff0c;分享了自己在开源领域的种种收…