【发布时间】:2018-07-18 09:41:46
【问题描述】:
经过大量搜索后,很遗憾我找不到以下任务的解决方案:
我需要一个从 WHERE 子句返回值作为结果值的 Oracle-SQL 查询。这听起来很简单,但我就是不知道如何实现。
示例(应该如何):
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 中实现这一点? 提前感谢您的想法!
【问题讨论】:
-
我认为你需要一个子查询
-
你能举例说明你到底想做什么吗?
-
我不能硬编码“MY_VALUE”,它只能在 WHERE 子句中提供(不能在 SELECT 或 FROM 部分或其他地方) 为什么不呢?此约束看起来完全是任意的,因此您最好进一步详细说明。
-
我有一个从用户输入生成 SQL 查询的外部程序。这些用户输入仅在 where 子句的查询中可见。我需要提取提供的值以便能够进一步处理它们。
-
如上所述是不可能的(我认为),所以请编辑您的问题以解释您所拥有的场景和限制,以及您可以影响什么。例如,您如何实际提供和运行查询,查询的复杂程度是否有限制,如何提供用户输入并将其馈送到查询中,您在每个阶段可以看到的确切内容等等。我可以 也许如果您正在使用(命名)绑定变量,但目前它太模糊了。
标签: sql oracle where-clause