2014-11-04 51 views

回答

1

precision modifier of the timestamp type是類型名稱的一部分,無法在普通SQL中進行參數化。這不是一個函數,即使括號中的語法看起來相同。

您將需要動態SQL。在PL/pgSQL函數中,將該語句構建爲字符串並使用EXECUTE運行它。喜歡的東西:

EXECUTE 'SELECT col::timestamp(' || $1 || ')' 
INTO my_var; 

$1integer類型。不是像text這樣的字符串類型,或者您有可能的SQL注入漏洞。