Sql Oracle如何选择具有自定义名称的列

Sql Oracle如何选择具有自定义名称的列,sql,oracle,Sql,Oracle,我正在处理复杂的select查询,我想选择一些特定格式的列名,但oracle只给我大写字母 select no_constat as noFolder from cef_constat; 甲骨文给了我: **nofolder** value value value 我想要像这样的列名 我要大写的“F” 你知道如何做到这一点吗?试试这个: select nofolder as "noFolder" from your_table; 这是有效的,因为引用的标识符不会折叠为大写 有关详细信息,请

我正在处理复杂的select查询,我想选择一些特定格式的列名,但oracle只给我大写字母

select no_constat as noFolder from cef_constat;
甲骨文给了我:

**nofolder**
value
value
value
我想要像这样的列名

我要大写的“F”

你知道如何做到这一点吗?

试试这个:

select nofolder as "noFolder" from your_table;
这是有效的,因为引用的标识符不会折叠为大写

有关详细信息,请参见以下内容:

select nofolder as "noFolder" from your_table;
这是有效的,因为引用的标识符不会折叠为大写


详细信息可在

中找到,默认情况下,Oracle数据库区分大小写;但是,默认情况下,它们也会将所有内容转换为大写,以便区分大小写是从用户抽象出来的

这很有用,因此您可以执行以下操作:

SELECT no_constat FROM cef_constat;
SELECT NO_CONSTAT FROM CEF_CONSTAT;
SELECT No_Constat FROM Cef_Constat;
SELECT No_CoNsTaT FROM CeF_CoNsTaT;
它们都给出相同的结果,但数据库将应用其默认行为并将标识符转换为大写

然而,如果您使用双引号,那么oracle将尊重您对case的使用。在您的示例中,列名需要有区分大小写的别名,并且列名和表名可以有任何大小写:

SELECT no_constat as "noFolder" FROM cef_constat;
SELECT NO_CONSTAT as "noFolder" FROM CEF_CONSTAT;
SELECT No_Constat as "noFolder" FROM Cef_Constat;
SELECT No_CoNsTaT as "noFolder" FROM CeF_CoNsTaT;
或者,您甚至可以通过在所有标识符上使用双引号强制区分大小写,在这种情况下,您需要使用存储在数据字典中的确切大小写,即大写,用于表和列名:

SELECT "NO_CONSTAT" as "noFolder" FROM "CEF_CONSTAT";

默认情况下,Oracle数据库区分大小写;但是,默认情况下,它们也会将所有内容转换为大写,以便区分大小写是从用户抽象出来的

这很有用,因此您可以执行以下操作:

SELECT no_constat FROM cef_constat;
SELECT NO_CONSTAT FROM CEF_CONSTAT;
SELECT No_Constat FROM Cef_Constat;
SELECT No_CoNsTaT FROM CeF_CoNsTaT;
它们都给出相同的结果,但数据库将应用其默认行为并将标识符转换为大写

然而,如果您使用双引号,那么oracle将尊重您对case的使用。在您的示例中,列名需要有区分大小写的别名,并且列名和表名可以有任何大小写:

SELECT no_constat as "noFolder" FROM cef_constat;
SELECT NO_CONSTAT as "noFolder" FROM CEF_CONSTAT;
SELECT No_Constat as "noFolder" FROM Cef_Constat;
SELECT No_CoNsTaT as "noFolder" FROM CeF_CoNsTaT;
或者,您甚至可以通过在所有标识符上使用双引号强制区分大小写,在这种情况下,您需要使用存储在数据字典中的确切大小写,即大写,用于表和列名:

SELECT "NO_CONSTAT" as "noFolder" FROM "CEF_CONSTAT";