小编VT_*_*eBe的帖子

如何在pl/sql中的另一个游标的select语句中使用游标中的变量

我想运行查询,获取结果,然后使用第二个语句(游标)中第一个语句的值,使用另一个select语句迭代该查询的结果.

我的数据库中有40个用户.所有用户都具有相同的数据库架构结构.我想通过以下方式获取用户名:

SELECT  distinct username 
   from all_users 
Run Code Online (Sandbox Code Playgroud)

然后使用用户名运行如下查询:

Select lastname, firstname, email, email2 from username.member.
Run Code Online (Sandbox Code Playgroud)

我的结果集将返回多行,所以我也需要一个行类型.

我尝试了很多不同的pl/sql组合:

DECLARE
   CURSOR client_cur IS
   SELECT  distinct username 
   from all_users 
   where length(username) = 3;
   -- client cursor 
   CURSOR emails_cur (cli all_users.username%TYPE) IS
   SELECT id, name 
     FROM cli.org;
BEGIN
   FOR client IN client_cur LOOP
      dbms_output.put_line('Client is '|| client.username);
      FOR email_rec in client_cur(client.username) LOOP
         dbms_output.put_line('Org id is ' ||email_rec.id || ' org nam ' || email_rec.name);
      END LOOP;
  END LOOP;
END;
/
Run Code Online (Sandbox Code Playgroud)

DECLARE
  CURSOR c1 …
Run Code Online (Sandbox Code Playgroud)

oracle plsql

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

标签 统计

oracle ×1

plsql ×1