【发布时间】:2010-10-05 16:02:10
【问题描述】:
这是一个列名为“CLUSTER”的现有表。我必须查询此表以检索“CLUSTER”列的值。我收到了缺少表达式错误,因为 CLUSTER 是 Oracle 中的保留字。由于 oracle 允许按名称 CLUSTER 创建列,因此应该有办法检索它。如何查询该列?
PS - 我没有重命名列的选项。
提前致谢。
【问题讨论】:
-
您的确切查询是什么?错误信息是什么?
这是一个列名为“CLUSTER”的现有表。我必须查询此表以检索“CLUSTER”列的值。我收到了缺少表达式错误,因为 CLUSTER 是 Oracle 中的保留字。由于 oracle 允许按名称 CLUSTER 创建列,因此应该有办法检索它。如何查询该列?
PS - 我没有重命名列的选项。
提前致谢。
【问题讨论】:
只需使用双引号来引用该列,例如:
select "CLUSTER" from table;
另外,请确保您在列名称中匹配大小写。
【讨论】:
ALL_TAB_COLUMNS。这将为您提供准确的列名,包括任何嵌入的空格和大写/小写字母。