PostgreSQL中如何将查询结果的列名转为大写
PostgreSQL 查询结果列名转为大写的解决方法
在PostgreSQL中,默认会将未用双引号包裹的标识符(列名、表名等)转换为小写,所以你执行SELECT USER_NAME, USER_AGE from table;时,返回的列名会变成user_name和user_age。要让结果列名显示为大写的USER_NAME和USER_AGE,可以用以下两种方式:
1. 查询时指定大写别名(推荐,不修改表结构)
在查询语句中为列添加带双引号的大写别名,PostgreSQL会保留双引号内的大小写格式:
SELECT USER_NAME AS "USER_NAME", USER_AGE AS "USER_AGE" FROM table;
或者因为原列名在数据库中实际是小写(创建表时未加双引号的话),也可以直接写:
SELECT user_name AS "USER_NAME", user_age AS "USER_AGE" FROM table;
两种写法效果一致,最终返回的列名都会是大写格式。
2. 修改表结构(永久生效,需注意后续引用规则)
如果希望表的列名本身就以大写形式存储,需要在创建表时给列名加上双引号:
CREATE TABLE table ( "USER_NAME" VARCHAR(50), "USER_AGE" INT );
之后查询时,必须用双引号包裹列名才能正确引用:
SELECT "USER_NAME", "USER_AGE" FROM table;
此时返回的结果列名就是大写的,但要注意后续所有对这些列的操作都必须带双引号,否则会因标识符大小写不匹配报错。
内容的提问来源于stack exchange,提问作者Godnyl Pula
相关产品推荐
相关产品推荐

