Oracle - 在第一个单元格中使用值来确定第二个单元格的值

时间:2014-01-10 07:26:05

标签: sql oracle

我有一个有趣的要求 - 我需要连续使用第一个单元格的值来确定一行中第四个单元格的值。通常情况下,这将在应用程序级别或函数内处理,但我在常规选择查询中执行此操作。

以下是详细信息。

1)我有一个简单的查询(从D中选择A,B,C)正确返回以下内容

1 | 2 | 3

2)我有一个函数利用第一个查询中返回的值并返回一个值

select function_x('1') from dual

准确地返回'Z'

我想连接所有这些,所以我得到以下内容:

1 | 2 | 3 | Z

我尝试了类似这样的查询,但它不起作用:

select A, B, C, (select function_x(A) from dual) 
from D 

当我将值硬编码到函数中时它起作用,但是当我尝试利用第一个返回值时它不起作用。

如果没有我创建功能,有没有可用的解决方案?

2 个答案:

答案 0 :(得分:4)

select A, B, C, function_x(A) from D 

答案 1 :(得分:-1)

我想通了,我不得不使用子查询:

select A, B, C, function_x(A) from (select A, B, C from D)