Oracle SQL - 转义字段名称中的符号

Oracle SQL - Escape ampersand in field name

我看到了一堆相关的 post,但是 none 还解决了我的具体问题。

在 Oracle 中 SQL 我需要做这样的事情:

SELECT field1 "Eggs&Cheese"
FROM table1;

但它读取 &Cheese 并想要进行参数替换。我只希望字段名称为 Eggs&Cheese

我看到这个 post Escape ampersand with SQL Server,但是 Oracle 不喜欢括号 [] 语法。

还有 Escaping ampersand character in SQL string,但这是转义值字符串中的符号,而不是标签字符串。

替换与您使用的工具有关,与列别名无关。

db<>fiddle demo


根据工具的不同,您可以像 "set define off" 那样禁用它。

相关: & How to escape ampersand in TOAD?

你必须设置转义。在 Oracle SQL 开发人员中工作。

set escape \
SELECT field1 "Eggs\&Cheese" FROM table1;

工作完成后,您可以将其关闭。

set escape off