我有一個帶有條件結果的函式。根據引數值,它應該回傳varcharorint或uuidor timestamp。
該函式的回傳型別應該是什么?
uj5u.com熱心網友回復:
SQL 是嚴格型別的。簡單的解決方案是回傳一個text欄位。每個值都可以轉換為text. (您可以添加第二個回傳列,其中包含型別名稱作為元資訊。)
或者,回傳四個型別化的欄位 (varchar, int, uuid, timestamp),根據結果只填充其中一個。
僅當您可以在呼叫時告知回傳型別并相應地傳遞型別化輸入時,多態函式才是一種選擇。
有關的:
- 重構 PL/pgSQL 函式以回傳各種 SELECT 查詢的輸出
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/484236.html
標籤:PostgreSQL 功能 类型
上一篇:MERGE陳述句的鎖定級別
