關(guān)于每年入職員工總?cè)藬?shù)程序設(shè)計(jì)分析,希望老師能予以改進(jìn)。
老師這堂課講的程序設(shè)計(jì)有點(diǎn)小問題,不知道老師有沒有考慮到,這堂課的題目中說求每年中入職員工的總?cè)藬?shù), 那么一個(gè)公司從成立到現(xiàn)在50年, 那么求這50年每年進(jìn)入的員工數(shù), 是不是要定義50個(gè)變量; 還有老師之前定義的變量很顯然是知道其數(shù)據(jù)結(jié)果, 按照正常的邏輯很顯然是不符合理的;最后在if else語句不應(yīng)該是else把最后篩選的結(jié)果全部歸納為87的, 很顯示這樣程序是不符合實(shí)際的, 程序的健壯性不夠。希望老師能給予改進(jìn)
2020-05-17
最后統(tǒng)計(jì)直接用count就行了, 不用sum
2018-05-24
是的,樓主正解!這段講解的有問題,老師是根據(jù)結(jié)果來寫的,通常是不知道有多少個(gè)年份的
2015-08-05
declare
cursor emp2 is
?????? select to_char(hiredate,'yyyy'),count(empno) from szh_emp group by to_char(hiredate,'yyyy');
cyear varchar2(4);
cou number(5);
total number(5);
begin
? open emp2;
? loop
??? fetch emp2 into cyear,cou;
??? exit when emp2%notfound;
??? dbms_output.put_line(cyear||'有'||cou||'人');
??? end loop;
?? select sum(count(empno))into total from szh_emp group by to_char(hiredate,'yyyy');
?? dbms_output.put_line('一共有'||total);
?? close emp2;
end;?
2015-05-06
謝謝親的建議:)