1.写一个function找次部门中入职时间倒数第2的人??表名employee 字段名入职时间hire-date
2.显示为 student coures grade
student1 语文 80
student1 英语 90
student1 数学 95
student2 语文 87
student2 英语 96
student2 数学 98
student3 语文 85
student3 英语 96
student3 数学 95
用pl/sql刚成显示为
student 数学 语文 英语
student1 95 80 90
student2 98 87 96
student3 95 85 96
2.显示为 student coures grade
student1 语文 80
student1 英语 90
student1 数学 95
student2 语文 87
student2 英语 96
student2 数学 98
student3 语文 85
student3 英语 96
student3 数学 95
用pl/sql刚成显示为
student 数学 语文 英语
student1 95 80 90
student2 98 87 96
student3 95 85 96
2.select student,
sum(decode(coures,'数学',grade,0)) 数学,
sum(decode(coures,'语文',grade,0)) 语文,
sum(decode(coures,'英语',grade,0)) 英语
from tablename
group by student
select x.*
from employee x,
(
select max(hire-date) as n2_hire-date
from
((select a.* from employee )
union
(select a.* from employee a,(select max(hire-date) from employee) b
where a.hire-date=b.hire-date))
) y
where x.hire-date=y.n2_hire-date2、select student,
sum(数学) as 数学,
sum(语文) as 语文,
sum(英语) as 英语
from
(select student,
decode(coures,'数学',grade,0) 数学,
decode(coures,'语文',grade,0) 语文,
decode(coures,'英语',grade,0) 英语
from tablename
group by student)
from (select t.*,row_number()over(order by t.hire-date desc) as num
from employee t) t1
where t1.num=2
decode(coures,'数学',grade,0) 数学,
decode(coures,'语文',grade,0) 语文,
decode(coures,'英语',grade,0) 英语
from tablename
group by student