postgresql查询自动将大写的名称转换为小写的案例
项目招商找A5 快速获取精准代理名单
这篇文章主要介绍了postgresql查询自动将大写的名称转换为小写的案例,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
我就废话不多说了,大家还是直接看代码吧~
SELECT sum(aa) as "recordNumber" FROM table
SELECT sum(aa) as recordNumber FROM table
postgis查询字段是将字段字段转为小写,如果需要大写的字符,需要加双引号
补充:Postgresql中表名、列名、用户名大小写问题
注意:是双引号,单引号可能会被解析成普通字符,因而是不识别的字段
highgo=# create table "ExChange" (id int);CREATE TABLEhighgo=# create table ExChange (id int);CREATE TABLEhighgo=# \d List of relationsSchema | Name | Type | Owner----------------+----------+-------+--------oracle_catalog | dual | view | highgopublic | ExChange | table | highgopublic | exchange | table | highgopublic | myt | table | highgopublic | t1 | table | highgopublic | tran | table | highgo(6 rows) highgo=# insert into exchange values (1);INSERT 0 1highgo=# insert into "ExChange" values (2);INSERT 0 1highgo=# select * FROM exchange ;id----1(1 row)highgo=# select * FROM ExChange ;id----1(1 row)highgo=# select * FROM "ExChange" ;id----2(1 row) highgo=# insert into ExChange values (2);INSERT 0 1highgo=# select * FROM "ExChange" ;id----2(1 row)highgo=# select * FROM exchange ;id----12(2 rows)
> 从上面可以看出,如果不加双引号,那么表名都会被转化为小写。如果想要大小写混用,需要添加双引号。
highgo=# create table exchange (ID int,id int);ERROR: 42701: column "id" specified more than oncehighgo=# create table exchange (ID int,name text);CREATE TABLEhighgo=# select id from exchange ;id----(0 rows)highgo=# select ID from exchange ;id----(0 rows)highgo=# select "ID" from exchange ;ERROR: 42703: column "ID" does not existLINE 1: select "ID" from exchange ;highgo=# \d exchangeTable "public.exchange"Column | Type | Modifiers--------+---------+-----------id | integer |name | text |highgo=# \du List of rolesRole name | Attributes | Member of-----------+------------------------------------------------------------+-----------aaa | | {}gpadmin | Superuser, Create role, Create DB | {}highgo | Superuser, Create role, Create DB, Replication, Bypass RLS | {}replica | Replication | {}highgo=# create table AAA;ERROR: 42601: syntax error at or near ";"LINE 1: create table AAA; ^highgo=# create user AAA;ERROR: 42710: role "aaa" already existshighgo=# create user "AAA";CREATE ROLEhighgo=# \du List of rolesRole name | Attributes | Member of-----------+------------------------------------------------------------+-----------AAA | | {}aaa | | {}gpadmin | Superuser, Create role, Create DB | {}highgo | Superuser, Create role, Create DB, Replication, Bypass RLS | {}replica | Replication | {}
实验证明,字段与用户同样会被自动转化为小写,除非添加双引号。 其实最好的办法就是全部用小写,这样才能尽量减少问题的出现。
文章来源:脚本之家
来源地址:https://www.jb51.net/article/204960.htm
尊敬的看官您对postgresql查询自动将大写的名称转换为小写的案例有什么看法呢?互联网品牌制作专家愿与您共同探讨!版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请加微信号oem365 举报,一经查实,本站将立刻删除。上一篇: 解决postgresql数据库�գУģ��ԣ�更新慢的原因 返 回 下一篇:网站降权了怎么办