0

所以基本上说我有一个名为“设备”的表,然后其中一列是“数量”,如果我想创建一个采用该数字的值列表,比如数量是 4,值是(数量 - 1) 直到 !> 0,所以在这种情况下 (4, 3, 2, 1)

我正在使用 Oracle APEX 并假设我需要一个基于 sql 查询的动态 LOV,但不知道如何获得它。我从未在 PL/SQL 中使用过 for 循环

谢谢

4

2 回答 2

2

你不需要循环。

select level
from dual
connect by level <= 4
order by level desc;
于 2014-08-11T19:43:49.767 回答
0

这应该这样做。确保我把你放在/* xxx */哪里包括一个只有 1 条记录的 where 子句。最有可能的是,您将在此处使用设备表的 ID。

SELECT     ROWNUM display_value
,          ROWNUM return_value
FROM       DUAL
CONNECT BY ROWNUM <= (SELECT Quantity FROM Device WHERE /* xxx */)
ORDER BY   ROWNUM DESC;
于 2014-08-12T09:25:07.493 回答