小编Bri*_*oux的帖子

如何在循环内假脱机到多个文件?

我正在使用 Oracle 12c。

我有一张员工表,如下所示:

EMPLOYEE_NAME | DEPARTMENT_NAME
--------------|----------------
Jim           | Sales
Barb          | Marketing
Paul          | Sales
Frank         | Sales
Cindy         | Accounting
Carl          | Marketing
... and so on ...
Run Code Online (Sandbox Code Playgroud)

如果 PL/SQL 允许的话,我想做这样的事情:

FOREACH dept IN (SELECT DISTINCT DEPARTMENT_NAME FROM EMPOLYEES) DO
    SPOOL 'list_' || :dept || '.txt';
    SELECT EMPLOYEE_NAME
    FROM EMPLOYEES
    WHERE DEPARTMENT_NAME = :dept;
    SPOOL OFF;
DONE;
Run Code Online (Sandbox Code Playgroud)

这将产生一组如下文件:

list_Sales.txt:

Jim
Paul
Frank
Run Code Online (Sandbox Code Playgroud)

列表_营销.txt

Barb
Carl
Run Code Online (Sandbox Code Playgroud)

列表_会计.txt

Cindy
Run Code Online (Sandbox Code Playgroud)

... 等等 ...

关于如何实现这一目标有什么想法吗?

谢谢。

sql oracle plsql oracle12c

3
推荐指数
1
解决办法
5728
查看次数

标签 统计

oracle ×1

oracle12c ×1

plsql ×1

sql ×1