千家信息网

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

发表于:2025-01-21 作者:千家信息网编辑
千家信息网最后更新 2025年01月21日,转眼就是圣诞的节日,祝大家节日快乐。用 GaussDB T (也就是 GaussDB 100)绘制一棵圣诞树,纯国产,更喜庆。话不多说,上图:SQL如下:SELECTCASE WHEN ENMOTEC
千家信息网最后更新 2025年01月21日圣诞快乐: 用 GaussDB T 绘制一颗圣诞树,兼论高斯数据库语法兼容

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

话不多说,上图:

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 工作的非常愉快:

Case When;

LAG 分析函数;

CONNECT by;

当然,杨长老说了,我这棵圣诞树不太好看,他根据公司的祝贺图重新画了一个,杨长老说圣诞树应该是这样的:

再来图:

上代码:

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;

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

快乐 圣诞树 圣诞快乐 节日 长老 语法 好看 愉快 特殊 万事 万事如意 上代 上图 也就是 代码 公司 函数 国产 就是 效果 数据库的安全要保护哪些东西 数据库安全各自的含义是什么 生产安全数据库录入 数据库的安全性及管理 数据库安全策略包含哪些 海淀数据库安全审计系统 建立农村房屋安全信息数据库 易用的数据库客户端支持安全管理 连接数据库失败ssl安全错误 数据库的锁怎样保障安全 原神国际服有多少个服务器 删除玩家数据库 腾讯笔试数据库 木马检测属于网络安全技术嘛 六安软件开发培训多少钱 国家网络安全宣传周班会策划 中央企业网络安全责任考核 杭州顾维网络技术有限公司 web为什么不能关联服务器 驾校网络安全负责范围 5g软件开发工程师就业前景 常见的无线网络技术包括 数据库消息列的超链接在哪 贵州警察学院网络安全与执法 服务器硬盘黄灯闪烁 张店财务软件开发服务 服务器买回家要自己装系统吗 进一步加强网络安全应急处置 浙江米尚网络技术 服务器运行内存大小怎么看 丰台区智能软件开发服务技术规范 web中删除数据库代码 全国中学生网络安全竞赛报名 闵行区创新数据库报价行情 web服务器实现数据上报 夫妻日记软件开发 数据库商品属性包括什么 智能儿童网络安全宣传周 沈阳畅想网络技术有限公司 网络安全活动教育心得体会
0