用 PL/SQL
统计两个日期之间特殊的一天的次数
原文:https://www . geeksforgeeks . org/通过使用-pl-sql/ 计算两个日期之间的特殊天数
编写一个 pl/sql 程序来输入两个日期,并打印这两个日期之间的星期日数。
解释: 在循环的每次迭代之前,评估条件。如果评估为真,则执行语句序列。如果条件评估为假或空,循环结束,控制在结束循环语句后恢复。
注意: 简单循环和 while 循环唯一的区别就是简单先执行然后检查条件,所以简单循环至少执行一次,在 while 循环中先检查条件再执行。
示例-1:
Input: Enter value for date1: 01-SEP-19
Enter value for date2: 29-SEP-19
Output: no of Sundays : 5
示例-2:
Input: Enter value for date1: 01-SEP-19
Enter value for date2: 15-SEP-19
Output: no of Sundays: 3
代码:
--declare the variables D1 and D2.
--type of variable is Date.
SQL> DECLARE
D1 Date;
D2 Date;
Cnt Number:=0;
BEGIN
D1:='&Date1';
D2:='&Date2';
D1:=next_day(D1-1, 'SUNDAY');
--check the condition by using while loop.
while(D1<=D2)
LOOP
Cnt:=Cnt+1;
D1:=D1+7;
END LOOP;
dbms_output.put_line('no of Sundays:'||Cnt);
END;
/
--end of program
输出:
Enter value for date1: 01-SEP-19
old 5: Begin D1:='&Date1';
new 5: Begin D1:='01-SEP-19';
Enter value for date2: 29-SEP-19
old 6: D2:='&Date2';
new 6: D2:='29-SEP-19';
no of Sundays:5
PL/SQL 过程已成功完成。
优点:- 通过使用 while 循环,它首先检查条件,然后执行,因此我们可以轻松地计算两个日期之间某个特殊日子的数量。
版权属于:月萌API www.moonapi.com,转载请注明出处