[英]PostgreSQL substitute case sensitive variables in a command
您好,我在 plpgsql 腳本中有一些變量。 都是大小寫敏感的。
schema := 'myschema';
table_name := 'MyTable'
column_name := 'MyColumn'
我需要將這些變量放在一個簡單的語句中:
select max(column_name) from schema.table_name.
我覺得我正在與 PostgreSQL 區分大小寫作斗爭。我基本上需要重新創建它:
select max("MyColumn") from myschema."MyTable";
對於我的生活,我無法完成這項工作,並且對於 PostgreSQL 來說顯然太愚蠢了。嘗試使用 EXECUTE()、EXECUTE() w/ FORMAT()、quote_indent() 等。有什么想法嗎?
得到了這個寶石
execute format('select max(%I) from %s.%I', column_name, schema_name, table_name);
令人沮喪的是,這花了我幾個小時的時間......
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.