Sql 在oracle中查询别名列时出现问题
我正在尝试使用ORACLE查询解决这个问题。以下是示例数据Sql 在oracle中查询别名列时出现问题,sql,oracle,Sql,Oracle,我正在尝试使用ORACLE查询解决这个问题。以下是示例数据 | Col1 | Col2 | ------------------------------------ | 21-dec-15 | nochange | | 20-dec-15 | change | | 20-dec-15 | nochange | | 18-dec-15 | change | | 18-dec-15
| Col1 | Col2 |
------------------------------------
| 21-dec-15 | nochange |
| 20-dec-15 | change |
| 20-dec-15 | nochange |
| 18-dec-15 | change |
| 18-dec-15 | nochange |
这里col2是一个别名列,而不是表中的列
这里的要求是一个特定的日期,我需要检查是否有任何变化正在发生,如果有变化,然后更新nochange以更改该日期
因为col2是一个别名列,所以我不确定如何检查它。如果将结果存储在单独的别名列中,我也可以
预期结果:
| Col1 | Col2 |
------------------------------------
| 21-dec-15 | nochange |
| 20-dec-15 | change |
| 20-dec-15 | change |
| 18-dec-15 | change |
| 18-dec-15 | change |
这应该做到:
with tempt as
(
<<Your existing query that returns col1 and col2>>
)
select t1.col1,
case when exists ( select 1 from tempt t2 where t1.col1=t2.col1 and t2.col2='change')
then 'change'
else t1.col2
end
from tempt t1;
如果需要,按col1添加订单。什么是引用列?它是别名列..已编辑..仍然无法获取它-什么是别名列?您的意思是,它是在select语句中计算的,就像select case在。。。然后'change'或者'nochange'结束?基本上我需要从col2中捕获所有更改值,获取日期,以及我们获取的所有日期,我必须用'change'更新相应的col2…请显示表模式定义。