小编Joh*_*ohn的帖子

Oracle 动态旋转

我有下表。我需要根据 CCL 列创建列。CCL 列中的值未知。我不知道从哪里开始。任何帮助,将不胜感激。

塔贝拉

ID    CCL    Flag
1     john     x
1     adam     x
1     terry
1     rob      x
2     john     x
Run Code Online (Sandbox Code Playgroud)

询问:

SELECT *
FROM TABLEA
Run Code Online (Sandbox Code Playgroud)

输出:

ID  John  Adam  Terry  Rob
 1    x     x           x
 2    x       
Run Code Online (Sandbox Code Playgroud)

sql oracle pivot

5
推荐指数
1
解决办法
7110
查看次数

带条件的窗口函数

我有下表。

First_Value满足条件时可以创建窗口函数吗?

例如,当 is = 1 时我需要第一个值并按 id 分区

表A

ID    Date       IS
 1     1/1/18    0
 1     1/2/18    1
Run Code Online (Sandbox Code Playgroud)

我的工作:

   SELECT 
   CASE
   WHEN A.IS = 1 THEN A.DATE END)OVER (PARTITION BY A.ID ORDER BY A.DATE)                
   END FIRST_ATTEMPT_DT
   FROM TABLEA A
Run Code Online (Sandbox Code Playgroud)

sql oracle window-functions

5
推荐指数
1
解决办法
5617
查看次数

到目前为止的转换数

我有下表.是否可以将Month列转换为日期?

ID    Month
 1    201805
Run Code Online (Sandbox Code Playgroud)

预期成绩:

Id  Month    Date
1   201805   5/1/2018
Run Code Online (Sandbox Code Playgroud)

sql oracle date to-char

0
推荐指数
1
解决办法
52
查看次数

计算两段之间的天数

我有两张桌子.我想计算星期一到星期五的天数,仅在Hire_dt和日历月结束之间.

表A

Hire_DT         Id
 09/26/2018     1
Run Code Online (Sandbox Code Playgroud)

TableCalendar:

Date         WorkDay(M-F)      EOM        WorkDay
09/26/2018     Wednesday       9/30/2018    1
09/27/2018     Thursday        09/30/2018   1
09/28/2018     Friday          09/30/2018   1
09/29/2018     Saturday        09/30/2018   0
09/30/2018     Sunday          09/30/2018   0
Run Code Online (Sandbox Code Playgroud)

预期成绩

Hire_dt        WorkDaysEndMonth   WorkDaysEndMonth --counting hire_dt
 09/26/2018         2                 3
Run Code Online (Sandbox Code Playgroud)

sql oracle calendar between

0
推荐指数
1
解决办法
64
查看次数

标签 统计

oracle ×4

sql ×4

between ×1

calendar ×1

date ×1

pivot ×1

to-char ×1

window-functions ×1