经过大量搜索后,我遗憾地找不到以下任务的解决方案:
我需要一个Oracle-SQL-Query,它将WHERE子句中的值作为结果值返回 . 这听起来很简单,但我无法找到如何实现这一目标 .
示例(应该如何):
SELECT some_dummy_colum FROM some_dummy_table WHERE some_dummy_coumn = 'MY_VALUE';
期望的结果:
MY_VALUE
我知道我可以写类似的东西
SELECT 'MY_VALUE' FROM DUAL;
但在这种情况下,我不能硬编码'MY_VALUE',它只能在WHERE子句中提供(不在SELECT或FROM部分或其他地方) .
有没有办法在Oracle中实现这一目标?提前感谢您的想法!
1 回答
这是一个非常讨厌的黑客,更多的好奇心比什么:
或者没有子查询,如果可以使
where
子句更复杂:无论哪种方式,它都在数据字典中查找此会话当前正在执行的语句;而且我不完全确定这是一件有效的事情 . 这似乎在11g和12c中工作,并且(到目前为止)总是报告所搜索的值,但我不知道它是有保证的 . 感觉就像滥用时空连续统一体......