[英]Sorting a collection
我想排序一個集合類型,並根據DESC的日期順序填充一個新集合。 我該怎么辦?
TYPE xyz IS RECORD(
Item aa.Item%Type,
t_date date,
Code aa.Code%Type,
Qty aa.Units%Type,
Cost aa.Total_Cost%TYPE );
TYPE uxyz IS TABLE OF xyz;
l_uxyz uxyz;
為了說明一個非常小的例子,我提到了以下片段。 希望這對您有所幫助。
-- SQL Table type creation
CREATE OR REPLACE TYPE NUMBER_NTT
IS
TABLE OF NUMBER;
-- Anonomous block to illustrate your question
SET serveroutput ON;
DECLARE
TYPE lv_num_tab
IS
TABLE OF NUMBER;
lv_num1 lv_num_tab:=lv_num_tab();
lv_num2 NUMBER_NTT;
BEGIN
lv_num2:=NUMBER_NTT(1,3,4,7,2,6);
SELECT COLUMN_VALUE BULK COLLECT
INTO lv_num1
FROM TABLE(lv_num2)
ORDER BY 1 DESC;
dbms_output.put_line('With desc order');
FOR i IN lv_num1.FIRST..lv_num1.LAST
LOOP
dbms_output.put_line(lv_num1(i));
END LOOP;
SELECT COLUMN_VALUE BULK COLLECT INTO lv_num1 FROM TABLE(lv_num2);
dbms_output.put_line('Without desc order');
FOR i IN lv_num1.FIRST..lv_num1.LAST
LOOP
dbms_output.put_line(lv_num1(i));
END LOOP;
END;
-------------------------------------OUTPUT-----------------------------------------
anonymous block completed
With desc order
7
6
4
3
2
1
Without desc order
1
3
4
7
2
6
------------------------------------------------------------------------------------
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.