如何排序和拥有if语句sql

时间:2015-11-16 22:41:55

标签: sql

所以我有这个项目要做,我真的很困惑该怎么做

1.假设在执行程序之前创建了以下两列到worker表(您的程序不必创建这两列):

|LEADER_LN    | LEADER_FN   |
=============================
|varchar2(25) | varchar2(25)|

这些列代表将分配给每个工作人员的领导者。您的程序将为每个工作人员将数据插入这些列。

每个工人现在都会有一名领导分配给他。上面的2列代表领导者的姓氏和名字。以下是为每个工人选择领导者的标准:

根据年龄和住宿情况分配领导人。每个工人都被分配到住在同一个小屋的下一个最老的工人。例如,Dick Jones将Pat Lavay作为领导者。 Pat Lavay将John Pearson作为领导者。 John Pearson让Andrew Dye成为领导者。 Andrew Dye将George Oscar作为领导者。乔治奥斯卡是最古老的,没有人作为领导者(领导者专栏设置为NULL)。如果工人没有年龄(如工作团队),他们就会被指派最年长的工人作为领导者。解析每个工作人员的姓氏和名字,并插入相应的列。如果工人不住在旅馆,他们就没有团队领导。如果只有一名工人住在旅馆,他们也没有团队领导。

我怎么会这样做?

到目前为止,我已经

select 
LAG (p.name) over (order by p.lodging, p.age) Leader_ln, p.name
--lead (p.name) over( order by p.age, p.lodging) Leader_fn --
from worker p;

0 个答案:

没有答案