基于PostgreSql 别名区分大小写的问题

Anna ·
更新时间:2024-11-14
· 741 次阅读

PostgreSql是区分大小写的

如果别名的大小不一致就会提示错误:

SELECT * FROM ( SELECT cpi."product_item_id" "PRODUCT_ITEM_ID" FROM prd.up_product_item cpi ) a WHERE a.PRODUCT_ITEM_ID=1

一个很简单的子查询,但是会出错,虽然从语句上看大小写是一致的,但是内部查询中还是使用了小写。PostgreSql对于大写都需要加上双引号的,不然还是视作小写而定。

正确的写法如下 SELECT * FROM ( SELECT cpi."product_item_id" "PRODUCT_ITEM_ID" FROM prd.up_product_item cpi ) a WHERE a."PRODUCT_ITEM_ID"=1

补充:postgresql查询字段别名大写的要加双引号

PostgreSQL对表名、字段名都是区分大小写的。

在图形化界面可以正常新建。用SQL语句的时候需要加双引号,如果jdbc查询等处,记得使用转义符号。

PostgreSQL在SQL语句中对大小写是不敏感的。

select ID from t_user 和 select id from t_user

都会从t_user这个表中查询id这个字段。如果要查询大写字母的字段,同样要加上双引号:select “ID” from t_user

以上为个人经验,希望能给大家一个参考,也希望大家多多支持软件开发网。如有错误或未考虑完全的地方,望不吝赐教。

您可能感兴趣的文章:PostGresql 实现四舍五入、小数转换、百分比的用法说明解决postgresql 数据库 update更新慢的原因postgresql查询自动将大写的名称转换为小写的案例聊聊PostgreSql table和磁盘文件的映射关系Postgresql 数据库转义字符操作postgresql 中round函数的用法说明



大小写 PostgreSQL

需要 登录 后方可回复, 如果你还没有账号请 注册新账号