欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

圣诞快乐: 用 GaussDB T 绘制一颗圣诞树,兼论高斯数据库语法兼容

程序员文章站 2024-01-03 11:07:16
...

转眼就是圣诞的节日,祝大家节日快乐。用 GaussDB T (也就是 GaussDB 100)绘制一棵圣诞树,纯国产,更喜庆。

话不多说,上图:

圣诞快乐: 用 GaussDB T 绘制一颗圣诞树,兼论高斯数据库语法兼容

SQL如下:

SELECT
CASE WHEN ENMOTECH = 1 THEN lpad('*',
	GAO,
' ')
ELSE lpad(' ',
	GAO + 1-ENMOTECH,
' ') || rpad('*',
	lag(ENMOTECH) OVER (PARTITION BY 1
ORDER BY
	ENMOTECH) + ENMOTECH -2,
'*')
END "圣诞快乐!"
FROM
(SELECT
LEVEL ENMOTECH ,
MAX(LEVEL) OVER (PARTITION BY 1) GAO
FROM dual
CONNECT BY LEVEL < 19 )
UNION ALL
SELECT
lpad(lpad('*',3,'*'),19)
FROM dual
CONNECT BY LEVEL < 5;

主要,这段 SQL 代码,和 Oracle 完全兼容,在 Oracle 中执行效果如下:
圣诞快乐: 用 GaussDB T 绘制一颗圣诞树,兼论高斯数据库语法兼容

总结一下,在使用了非常特殊的查询语法后,GaussDB 工作的非常愉快:

Case When;
LAG 分析函数;
CONNECT by;

当然,杨长老说了,我这棵圣诞树不太好看,他根据公司的祝贺图重新画了一个,杨长老说圣诞树应该是这样的:
圣诞快乐: 用 GaussDB T 绘制一颗圣诞树,兼论高斯数据库语法兼容

再来图:
圣诞快乐: 用 GaussDB T 绘制一颗圣诞树,兼论高斯数据库语法兼容

上代码:

WITH leaf AS (
SELECT
lpad(rpad('*',
	(ROWNUM-1)* 2 + 1,
'*'),
ROWNUM + 20) leaf,
ROWNUM
FROM
	dual
CONNECT BY
LEVEL <= 3),
lv AS (
SELECT
ROWNUM lv
FROM
	dual
CONNECT BY
LEVEL <= 5),
leafs AS (
SELECT
lpad(rpad('*',
	(ROWNUM-1)* 2 + 1 +(lv-1)* 2,
'*'),
ROWNUM + 20 + lv) leaf
FROM
	leaf,
	lv),
root AS (
SELECT
lpad(rpad('*',
5,
'*'),
24)
FROM
	dual
CONNECT BY
LEVEL <= 4)
SELECT
	leaf
FROM
	leafs
UNION ALL
SELECT
	*
FROM
	root;

祝大家圣诞快乐,万事如意,平平安安!

另:想了解更多 GaussDB 数据库的知识与用法,欢迎关注墨天轮“GaussDB 专栏”(地址:https://www.modb.pro/db,点击左下角的“阅读原文”或者扫描下方二维码可直达),此外,墨天轮开放了很多数据库专栏,如 GaussDB、PolarDB、OceanBase、TDSQL、GoldenDB 等众多数据库专栏,欢迎关注学习!

圣诞快乐: 用 GaussDB T 绘制一颗圣诞树,兼论高斯数据库语法兼容

扩展阅读


  1. 2019,年度数据库舍 PostgreSQL 其谁?

  2. 2019,国产数据库元年开启新纪元

  3. 2019,遇见最好的 MySQL 数据库

  4. 史上最全:PostgreSQL DBA常用SQL查询语句

  5. 2019年12月数据库流行度排行:前三甲高位收官 数据库重获增长趋势

  6. 万字详解Oracle架构、原理、进程,学会世间再无复杂架构

  7. 1000行MySQL学习笔记,收藏版!

  8. 史上最全PostgreSQL体系结构

圣诞快乐: 用 GaussDB T 绘制一颗圣诞树,兼论高斯数据库语法兼容

数据和云

ID:OraNews

如有收获,请划至底部,点击“在看”,谢谢!

资源下载

关注公众号:数据和云(OraNews)回复关键字获取

help,30万+下载的完整菜单栏

2019DTCC,数据库大会PPT

2018DTCC , 数据库大会PPT

2018DTC,2018 DTC 大会 PPT

ENMOBK《Oracle性能优化与诊断案例》

DBALIFE,“DBA 的一天”海报

DBA04,DBA 手记4 电子书

122ARCH,Oracle 12.2体系结构图

2018OOW,Oracle OpenWorld 资料

产品推荐

云和恩墨BethuneX  企业版,集监控、巡检、安全于一身,你的专属数据库实时监控和智能巡检平台,漂亮的不像实力派,你值得拥有!

圣诞快乐: 用 GaussDB T 绘制一颗圣诞树,兼论高斯数据库语法兼容

云和恩墨zData一体机现已发布超融合版本和精简版,支持各种简化场景部署,零数据丢失备份一体机ZDBM也已发布,欢迎关注。

圣诞快乐: 用 GaussDB T 绘制一颗圣诞树,兼论高斯数据库语法兼容

云和恩墨大讲堂 | 一个分享交流的地方

长按,识别二维码,加入万人交流社群

圣诞快乐: 用 GaussDB T 绘制一颗圣诞树,兼论高斯数据库语法兼容

请备注:云和恩墨大讲堂

  点个“在看”  
 你的喜欢会被看到????

上一篇:

下一篇: