我有一個表像註冊這 -如何UNPIVOT動態
Students Class1 Class2 Class3
student1 1 0 1
student2 0 1 0
student3 1 1 0
studnet4 0 1 1
而且我要像這 -
Class1 has 3 Students
Class2 has 2 Students
Class3 has 3 Students
我輸出我已經做了查詢,像這個 -
select classname||' has '||count(num)||' students 'as no_of_students from
(
select * from enroll)
unpivot (
num for classname in (class1,class2,class3)
)
where num=1
group by classname;
但是,如果有更多的班級比我每次在我的子句中都有變化。我也不知道pl/sql。所以如果有人可以幫忙?
不要使用'count()'作爲集合函數,而是使用'sum()'作爲集合函數。 'select classname ||'有'|| sum(num)||'學生'作爲no_of_students從組類' – ridi
不需要那個計數也將給出所需的結果,因爲它會計算rowid whre num = 1。除此之外,我想要怎麼做動作? –
你可以提供一個數據 - 表'的結構enrol' – ridi