今天兄弟们的帮助,数据库,具有数据如下面的表:

no  name

1    a

2    b

3    c

4    d

怎样用一个sql显演示样例如以下结果:

ab

ac

ad

bc

bd

cd

对于这样的构造数据,是分析函数的强项。以下来做个试验:

create table t (no number,name varchar(2));

insert into t values(1,'a');

insert into t values(2,'b');

insert into t values(3,'c');

insert into t values(4,'d');

commit;



实现1:

select decode(h2, '', '', h1 || h2) b,

       decode(h3, '', '', h1 || h3) c,

       decode(h4, '', '', h1 || h4) d

  from (select name h1,

               lead(name, 1) over(order by name) h2,

               lead(name, 2) over(order by name) h3,

               lead(name, 3) over(order by name) h4

          from t) ;

B    C    D

---- ---- ----

ab   ac   ad

bc   bd

cd



实现2:相对实现1对于行进行了转换

with tt as(

select name h1,

               lead(name, 1) over(order by name) h2,

               lead(name, 2) over(order by name) h3,

               lead(name, 3) over(order by name) h4

          from t

)

select * from (select decode(h2, '', '', h1 || h2) b from tt

union

select decode(h3, '', '', h1 || h3) c from tt

union

select decode(h4, '', '', h1 || h4) d from tt)

where b is not null;

B

----

ab

ac

ad

bc

bd

cd

实现3:也能够不用分析函数

select a.name || b.name from t a, t b where a.no < b.no;

附录,一句SQL实现9*9乘法口诀:

select r1 || '*' || r1 || '=' || r1 * r1 A,

decode(r2, '', '', r2 || '*' || r1 || '=' || r2 * r1) b,

decode(r3, '', '', r3 || '*' || r1 || '=' || r3 * r1) C,

decode(r4, '', '', r4 || '*' || r1 || '=' || r4 * r1) D,

decode(r5, '', '', r5 || '*' || r1 || '=' || r5 * r1) E,

decode(r6, '', '', r6 || '*' || r1 || '=' || r6 * r1) F,

decode(r7, '', '', r7 || '*' || r1 || '=' || r7 * r1) G,

decode(r8, '', '', r8 || '*' || r1 || '=' || r8 * r1) H,

decode(r9, '', '', r9 || '*' || r1 || '=' || r9 * r1) I

from (select level r1,

lag(level, 1) over(order by level) r2,

lag(level, 2) over(order by level) r3,

lag(level, 3) over(order by level) r4,

lag(level, 4) over(order by level) r5,

lag(level, 5) over(order by level) r6,

lag(level, 6) over(order by level) r7,

lag(level, 7) over(order by level) r8,

lag(level, 8) over(order by level) r9

from dual

connect by level < 10);

使用lead分析功能相似的结构9*9乘法口诀功能的更多相关文章

  1. 【知识强化】第五章 中央处理器 5.1 CPU的功能和基本结构

    那么在前四章我们已经把数据的表示和运算,存储系统和指令系统都已经给大家讲完了.那么从这一章开始,我们将要讲解中央处理器的内容.那么这一部分内容我们就进入到我们计算机组成原理的一个深水区,它是我们计算机 ...

  2. [阿里DIN] 深度兴趣网络源码分析 之 整体代码结构

    [阿里DIN] 深度兴趣网络源码分析 之 整体代码结构 目录 [阿里DIN] 深度兴趣网络源码分析 之 整体代码结构 0x00 摘要 0x01 文件简介 0x02 总体架构 0x03 总体代码 0x0 ...

  3. Week2 Teamework from Z.XML 软件分析与用户需求调查(二)应用助手功能评测

    评测人:薛亚杰 周敏轩. 说明:言辞激烈,请勿介意. 软件使用概述 我们团队这次评测的必应助手是必应缤纷桌面的一个小功能,根据评测人员试用几天后发现,它的作用大概就是能够用一种看上去比较生动的形式来给 ...

  4. 2019微软Power BI 每月功能更新系列——2月Power BI 新功能学习

    哈喽,小伙伴们,我是小悦悦,好久不见~ 春节假期结束,新一轮的工作开始,祝大家猪年如意,开工大吉! 今天小悦悦带你走入猪年学习的正确打开方式——Power BI新一年的持续更新学习!   Power ...

  5. 微软Power BI 每月功能更新系列——4月Power BI 新功能学习

    本月Power BI Desktop的更新,除了常规的视觉和数据连接器改进之外,还有两个非常大的功能改进,交互式的报表.问答,用户直接在Desktop可以询问有关的数据问题,面对层出不穷的用户需求,这 ...

  6. 微软Power BI 每月功能更新系列——9月Power BI 新功能学习

    Power BI Desktop 9月新功能摘要 Power BI 9月更新如期而至,这一次Power BI 又推出了新功能——聚合预览,它可在内存中无缝地存储汇总值,大大提高报告的性能.另外本月还包 ...

  7. 个性化推荐产品功能的设计和B端产品的功能策划方式

    宜信科技中心财富管理产品部负责人Bob,与大家一起聊聊个性化推荐产品功能的设计和B端产品的功能策划方式. 拓展阅读:回归架构本质,重新理解微服务|专访宜信开发平台(SIA)负责人梁鑫 智慧金融时代,大 ...

  8. 功能更新 | medini analyze — 符合ISO 26262的功能安全平台工具

            汽车电子电气系统的功能安全随着智能驾驶.新能源等新兴技术的发展而愈发受到重视.在国际功能安全标准ISO 26262的落地过程中遇到了很多的棘手问题:如何正确而有效地实施HARA以得到合 ...

  9. .net Mvc文件下载的功能,大文件下载完成之后修改数据库功能

    原文:.net Mvc文件下载的功能,大文件下载完成之后修改数据库功能 我服务器上文件只能下载一次,下载了之后就不能下载了,大文件或网速不好时,可能服务端文件流发送完了,客户端还没下载完,导致下载失败 ...

随机推荐

  1. Android中常用的优秀开源框架

    Android开源框架库分类,挑选出最常用,最实用的开源项目,本篇主要介绍的是优秀开源框架库和项目,UI个性化控件会独立介绍.UI个性化控件 Index Dependency Injections A ...

  2. Android中的动画具体解释系列【3】——自己定义动画研究

    在上一篇中我们使用到了位移动画TranslateAnimation,以下我们先来看看TranslateAnimation是怎样实现Animation中的抽象方法的: /* * Copyright (C ...

  3. href="javascript:;" href="javascript:void(0);" href="#"区别

    一.href="javascript:;" 这种用法不正确,这么用的话会出现浏览器访问"javascript:;"这个地址的现象: 二.href="j ...

  4. Linux网络编程——原始套接字编程

    原始套接字编程和之前的 UDP 编程差不多,无非就是创建一个套接字后,通过这个套接字接收数据或者发送数据.区别在于,原始套接字可以自行组装数据包(伪装本地 IP,本地 MAC),可以接收本机网卡上所有 ...

  5. Ambari——大数据平台的搭建利器(一)

    Ambari 跟 Hadoop 等开源软件一样,也是 Apache Software Foundation 中的一个项目,并且是**项目.目前最新的发布版本是 2.0.1,未来不久将发布 2.1 版本 ...

  6. 我的Boss有性能优化强迫症

    我有一个Boss,他曾经在阿里深造,在UC修炼,在一号店奔波. 经过几个月的合作开发和技术交流,我发现他非常在乎程序的性能,但是呢,对于有些地方,我觉得划不来. 比如说, 把数据库中的30多条记录,查 ...

  7. 巧用redis位图存储亿级数据与访问 - 简书

    原文:巧用redis位图存储亿级数据与访问 - 简书 业务背景 现有一个业务需求,需要从一批很大的用户活跃数据(2亿+)中判断用户是否是活跃用户.由于此数据是基于用户的各种行为日志清洗才能得到,数据部 ...

  8. FreeBSD 5.0中强制访问控制机制的使用与源代码分析【转】

    本文主要讲述FreeBSD 5.0操作系统中新增的重要安全机制,即强制访问控制机制(MAC)的使用与源代码分析,主要包括强制访问控制框架及多级安全(MLS)策略两部分内容.这一部分讲述要将MAC框架与 ...

  9. JS事件处理函数中return false到底是什么东西

    在<JS DOM编程艺术>一书中,用return false来阻止事件默认行为,可是js高程3里没有这种用法,那这到底是什么呢. 先看一下知乎的一个解释 就此问题,首先要纠正两个观点: 1 ...

  10. android 创建一个新的每次project什么时候 请问自己主动 参加 V7依赖?

    android 创建一个新的每次project什么时候 请问自己主动 参加 V7依赖? 分析原因: 主要是由于.我之前的 SDK 的版本号 更新的有点高了.低版本号是不会有这样的问题g的,新版本号中g ...