簡體   English   中英

您可以連接兩個字符串以在PostgreSQL中創建動態列名嗎?

[英]Can you concatenate two strings to create dynamic column names in PostgreSQL?

我有一個表格,人們可以在其中輸入開始和結束日期以及列名前綴。

在后端,我想按照以下方式做一些事情

SELECT *, CAST('{{startDate}}' AS TIMESTAMP) AS ({{prefix}} + '_startDate')

這可能嗎? 基本上,我想動態創建新列的名稱。 該表將立即返回給用戶,因此我不想更改基礎表本身。 謝謝!

您可以使用EXECUTE關鍵字執行已准備好的動態查詢,否則就不可能具有SQL的動態結構。

由於您正在准備數據庫外的SQL,因此可以使用以下方法:

SELECT *, CAST('{{startDate}}' AS TIMESTAMP) AS {{prefix}}_startDate

假設模板將{{prefix}}替換為某些字符串,然后將其發送到數據庫。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM