Oracle
 sql >> Baza danych >  >> RDS >> Oracle

Dalsze przetwarzanie danych zwróconych w podanym dbms_output

możesz zadeklarować zmienną, w której zapiszesz ostatnią datę. możesz go użyć w następnej iteracji.

declare
  v_last_date date; -- is null
  ...
begin
  ...

  for i in t_data.first .. t_data.last loop
    if v_last_date is null then

      dbms_output.put_line(to_char(t_data(i).englishcalendar,'dd-mm-yyyy')||' 0' ); 
    else
      dbms_output.put_line(to_char(t_data(i).englishcalendar,'dd-mm-yyyy')||' ' 
                          ||to_char(t_data(i).englishcalendar - v_last_date)
                          ||' [' ||to_char(t_data(i).englishcalendar,'dd-mm-yyyy')||'-'
                          || to_char(v_last_date ,'dd-mm-yyyy')||']' ); 
    end if;
    v_last_date := t_data(i).englishcalendar; -- save a date of the iteration   
  end loop;
end;

nie testowałem tego.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. nieprawidłowa ścieżka podczas próby zapisania pliku w pl sql

  2. Dlaczego Oracle SQL Optimizer ignoruje predykat indeksu dla tego widoku?

  3. Testowanie jednostkowe instrukcji DDL, które muszą znajdować się w transakcji

  4. Jak możemy uzyskać 15-minutowy interwał czasowy?

  5. Lepszy sposób na ustrukturyzowanie instrukcji PL/SQL IF THEN?