0
我使用SQL在PostgreSQL中timestamp()不把函數參數作爲輸入?
cast(col as timestamp($1))
它給了我周圍的參數
在SQL工作錯誤,當我直接給出數:
cast(col as timestamp(1))
所以時間戳不帶函數參數?
我使用SQL在PostgreSQL中timestamp()不把函數參數作爲輸入?
cast(col as timestamp($1))
它給了我周圍的參數
在SQL工作錯誤,當我直接給出數:
cast(col as timestamp(1))
所以時間戳不帶函數參數?
precision modifier of the timestamp
type是類型名稱的一部分,無法在普通SQL中進行參數化。這不是一個函數,即使括號中的語法看起來相同。
您將需要動態SQL。在PL/pgSQL函數中,將該語句構建爲字符串並使用EXECUTE
運行它。喜歡的東西:
EXECUTE 'SELECT col::timestamp(' || $1 || ')'
INTO my_var;
$1
是integer
類型。不是像text
這樣的字符串類型,或者您有可能的SQL注入漏洞。