Как создать массив временных значений в oracle?

Пользователь

от willa_will , в категории: SQL , 9 месяцев назад

Как создать массив временных значений в oracle?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от terrence , 9 месяцев назад

@willa_will 

В Oracle для создания массива временных значений вы можете использовать различные методы, включая использование массива временных таблиц или типа данных TABLE OF DATE.

  1. Массив временных таблиц:


DECLARE TYPE date_array IS TABLE OF DATE INDEX BY BINARY_INTEGER; temp_dates date_array; BEGIN -- добавление значений в массив temp_dates(1) := TO_DATE('2021-01-01', 'YYYY-MM-DD'); temp_dates(2) := TO_DATE('2021-02-01', 'YYYY-MM-DD'); temp_dates(3) := TO_DATE('2021-03-01', 'YYYY-MM-DD');

1
2
3
4
-- вывод значений массива
FOR i IN 1..temp_dates.COUNT LOOP
  DBMS_OUTPUT.PUT_LINE('Date ' || i || ': ' || temp_dates(i));
END LOOP;


END; /

  1. Использование типа данных TABLE OF DATE:


DECLARE TYPE date_array IS TABLE OF DATE; temp_dates date_array := date_array(TO_DATE('2021-01-01', 'YYYY-MM-DD'), TO_DATE('2021-02-01', 'YYYY-MM-DD'), TO_DATE('2021-03-01', 'YYYY-MM-DD')); BEGIN -- вывод значений массива FOR i IN 1..temp_dates.COUNT LOOP DBMS_OUTPUT.PUT_LINE('Date ' || i || ': ' || temp_dates(i)); END LOOP; END; / Оба этих метода позволяют создавать массивы временных значений в Oracle. Вы можете выбрать наиболее подходящий для вашего случая способ. Важно помнить, что в данном примере использовалась процедурная часть языка PL/SQL.