首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在Oracle /SQL中使用索引字段而不是列名字段

在Oracle /SQL中使用索引字段而不是列名字段
EN

Stack Overflow用户
提问于 2020-01-31 22:16:20
回答 2查看 819关注 0票数 0

有人知道如何通过索引访问plsql oracle游标字段。

是否可以通过索引而不是列名来获取表的字段?

提前谢谢。

代码语言:javascript
复制
declare
  cursor c_user is 
    select * 
      from users
     where age > 20;
begin
    for u in c_user loop
        dbms_output.put_line(u.lastname||' '||u.firstname);
    end loop; 
end;

示例

代码语言:javascript
复制
declare
  cursor c_user is 
    select * 
      from users
     where age > 20;
begin
    for u in c_user loop
        dbms_output.put_line(u.1||' '||u.2);
    end loop; 
end;
EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2020-01-31 22:59:14

如果您在询问是否可以按其位置引用PL/SQL记录中的字段,则答案是否定的。你只能用名字来指代他们。

顺便说一句,在数据库世界中,索引通常是指一个数据库对象,该对象存储表中的键值及其为快速检索而组织的物理位置,而表是,哦,没关系,所以“通过索引获取表的字段”让我有点困惑,因为我不认为您是指对存储的数据进行优化查找。如果我搞错了,很抱歉。

票数 2
EN

Stack Overflow用户

发布于 2020-02-01 10:49:26

试着做这样的事:

代码语言:javascript
复制
declare
cursor Inx_Cur(P_Indx Number) is select 
decode(P_Indx,1,ACCOUNTNO,2,ACCOUNTNAME,3,ACCOUNTTYPE) My_field
from accounts;
begin
for Rec in Inx_Cur(3) -- pass the required index as 
parameter
loop
 dbms_output.put_line('My_field : '||Rec.My_field);
end loop;
end;
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/60011957

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档