圣诞快乐:用GaussDBT绘制一颗圣诞树,兼论高斯数据库语法兼容-创新互联

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

成都创新互联是专业的相山网站建设公司,相山接单;提供做网站、网站建设,网页设计,网站设计,建网站,PHP网站建设等专业做网站服务;采用PHP框架,可快速的进行相山网站开发网页制作和功能扩展;专业做搜索引擎喜爱的网站,专业的做网站团队,希望更多企业前来合作!

话不多说,上图:

圣诞快乐: 用 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;

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

分享文章:圣诞快乐:用GaussDBT绘制一颗圣诞树,兼论高斯数据库语法兼容-创新互联
文章分享:https://www.cdcxhl.com/article44/hhghe.html

成都网站建设公司_创新互联,为您提供自适应网站定制网站微信小程序网站营销微信公众号品牌网站建设

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

手机网站建设