postgresql查詢自動將大寫的名稱轉(zhuǎn)換為小寫的案例
我就廢話不多說了,大家還是直接看代碼吧~
SELECT sum(aa) as "recordNumber" FROM table SELECT sum(aa) as recordNumber FROM table
postgis查詢字段是將字段字段轉(zhuǎn)為小寫,如果需要大寫的字符,需要加雙引號
補充:Postgresql中表名、列名、用戶名大小寫問題
注意:是雙引號,單引號可能會被解析成普通字符,因而是不識別的字段
highgo=# create table "ExChange" (id int); CREATE TABLE highgo=# create table ExChange (id int); CREATE TABLE highgo=# \d List of relations Schema | Name | Type | Owner ----------------+----------+-------+-------- oracle_catalog | dual | view | highgo public | ExChange | table | highgo public | exchange | table | highgo public | myt | table | highgo public | t1 | table | highgo public | tran | table | highgo (6 rows) highgo=# insert into exchange values (1); INSERT 0 1 highgo=# insert into "ExChange" values (2); INSERT 0 1 highgo=# 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 1 highgo=# select * FROM "ExChange" ; id ---- 2 (1 row) highgo=# select * FROM exchange ; id ---- 1 2 (2 rows)
> 從上面可以看出,如果不加雙引號,那么表名都會被轉(zhuǎn)化為小寫。如果想要大小寫混用,需要添加雙引號。
highgo=# create table exchange (ID int,id int);
ERROR: 42701: column "id" specified more than once
highgo=# create table exchange (ID int,name text);
CREATE TABLE
highgo=# 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 exist
LINE 1: select "ID" from exchange ;
highgo=# \d exchange
Table "public.exchange"
Column | Type | Modifiers
--------+---------+-----------
id | integer |
name | text |
highgo=# \du
List of roles
Role 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 exists
highgo=# create user "AAA";
CREATE ROLE
highgo=# \du
List of roles
Role name | Attributes | Member of
-----------+------------------------------------------------------------+-----------
AAA | | {}
aaa | | {}
gpadmin | Superuser, Create role, Create DB | {}
highgo | Superuser, Create role, Create DB, Replication, Bypass RLS | {}
replica | Replication | {}
實驗證明,字段與用戶同樣會被自動轉(zhuǎn)化為小寫,除非添加雙引號。 其實最好的辦法就是全部用小寫,這樣才能盡量減少問題的出現(xiàn)。
以上為個人經(jīng)驗,希望能給大家一個參考,也希望大家多多支持腳本之家。如有錯誤或未考慮完全的地方,望不吝賜教。
相關(guān)文章
Postgresql 檢查數(shù)據(jù)庫主從復(fù)制進度的操作
這篇文章主要介紹了Postgresql 檢查數(shù)據(jù)庫主從復(fù)制進度的操作,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-12-12
postgresql 實現(xiàn)查詢某時間區(qū)間的所有日期案例
這篇文章主要介紹了postgresql 實現(xiàn)查詢某時間區(qū)間的所有日期案例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01
PostgreSQL使用jsonb進行數(shù)組增刪改查的操作詳解
有時候我們需要使用PostgreSQL這種結(jié)構(gòu)化數(shù)據(jù)庫來存儲一些非結(jié)構(gòu)化數(shù)據(jù),PostgreSQL恰好又提供了json這種數(shù)據(jù)類型,這里我們來簡單介紹使用jsonb的一些常見操作,需要的朋友可以參考下2024-03-03
PostgreSQL 數(shù)據(jù)庫性能提升的幾個方面
PostgreSQL提供了一些幫助提升性能的功能。主要有一些幾個方面。2009-09-09
pg中replace和translate的用法說明(數(shù)據(jù)少的中文排序)
這篇文章主要介紹了pg中replace和translate的用法說明(數(shù)據(jù)少的中文排序),具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01
PostgreSQL的外部數(shù)據(jù)封裝器fdw用法
這篇文章主要介紹了PostgreSQL的外部數(shù)據(jù)封裝器fdw用法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-01-01

