首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >如何显示下列问题说明的分区数据?

如何显示下列问题说明的分区数据?
EN

Stack Overflow用户
提问于 2020-02-13 06:10:16
回答 1查看 54关注 0票数 1

我的表结构如下

代码语言:javascript
运行
复制
Area    Section    Carrying_Engine

A1        S1           Petrol
A2        S1           Petrol
A3        S1           Diesel
A4        S1           Petrol
A5        S2           Diesel
A6        S2           Petrol

问题是我们必须在S1和S2节下显示出多少区域,发动机是汽油和柴油,产量必须是

代码语言:javascript
运行
复制
Section   From_Area   To_Area   Carrying_Engine

S1          A1          A3         Petrol
S1          A3          A4         Diesel
S1          A4          A5         Petrol
S2          A5          A6         Diesel 

PS :无论我们在运输引擎还是运输部门都有过渡,运输成本都会计入上一节或运输引擎账户,例如,在第三行有一个过渡,所以在这里,我们从A2转移到A3,我们使用了汽油发动机,在A3点我们安装了柴油发动机,所以在S1部分,我们将汽油发动机从A1区移到A3区。同样,在第4至第5行中,我们使用汽油发动机和附加柴油发动机从第4至第5行移动到S1,但在这里我们只将运输成本添加到第S1帐户中,所以从A4区到A5区,我们在S1部分使用了汽油发动机。

我无法得到解决这一问题的逻辑,请指导。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-02-13 07:58:18

您可以利用分析函数,但我必须说,您必须有一些列来标识列的顺序,因为oracle并不提供记录的自动排序。

我使用DATETIME列标识了以下解决方案中列的顺序:

SQL>和YOUR_TABLE (区域、区段、Carrying_Engine、日期时间)为2(从双重联合中选择'A1‘、'S1’、‘汽油’、SYSDATE-6从双重联合选择'A2‘、'S1’、‘汽油’、从双重联合中选择'A3‘、'S1’、‘柴油’、‘SYSDATE-4’,从双重联合选择'A4',‘s 1’,‘汽油’,SYSDATE -3来自双重联合,所有6个选择'A5','S2',‘柴油’,SYSDATE -2从双重联合选择'A6','S2',‘汽油’,SYSDATE -1从双重选择*-从这里开始查询从这里9从10 ( 11选择12节,13个区域为FROM_AREA,14个区域为TO_AREA (按日期顺序),15 CARRYING_ENGINE 16为17 ( 18选择19 T.*,20滞后( CARRYING_ENGINE )超过(按日期排序)为LEAD_CARRYING_ENGINE 21,从YOUR_TABLE T 22 ) 23,其中LEAD_CARRYING_ENGINE <> CARRYING_ENGINE 24或LEAD_CARRYING_ENGINE为NULL 25 ) 26,TO_AREA不为空;部分FROM_AREA TO_AREA TO_AREA CARRYING_ENGINE

干杯!!

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60201446

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档