最近尝试了一次while跑数,
declare
sysdataend date:=system-1;
startdata date:=to_date('20181214','YYYYMMDD');
begin
while(startdata loop -- 需要执行循环的过程 startdata:=startdata+1; loop end; end; 测试中发现system-1 的当天也会被计算,那么从结构上来看应该是while后面的条件先执行,那么system-1那天是不应该计算的。 但测试结果表示system-1如果在执行过程里面进行打印,是会被打印出来的。那么就表示,while后面的条件,是在loop后再进行判断的。 使用的时候需要注意这一点,不然会出现多数