本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
任何值函數
ANY_VALUE 函數從輸入表達式值非確定性返回任何值。如果輸入運算式不會傳回任何資料列或包含 NULL 值,此函數可以傳回 NULL。
語法
ANY_VALUE ( [ DISTINCT | ALL ] expression )
引數
- DISTINCT | ALL
-
指定 DISTINCT 或 ALL 可從輸入運算式值傳回任何值。DISTINCT 引數沒有任何作用,而且會被忽略。
- expression
-
函數作業所在的目標資料行或運算式。運算式是下列其中一種資料類型:
SMALLINT
INTEGER
BIGINT
DECIMAL
REAL
DOUBLE 精度
BOOLEAN
CHAR
VARCHAR
DATE
TIMESTAMP
TIMESTAMPTZ
TIME
時間茲
瓦字節
超級
赫爾草圖
GEOMETRY
GEOGRAPHY
傳回值
傳回與 expression 相同的資料類型。
使用須知
如果指定資料行 ANY_VALUE 函式的陳述式也包含第二個資料行參照,則第二個資料行必須出現在 GROUP BY 子句中,或包含在彙總函式中。
範例
這些範例使用 Amazon Redshift 入門指南中的步驟 4:從 Amazon S3 載入範例資料中建立的事件表格。下列範例會傳回事件名稱為老鷹任何 dateid 的執行個體。
select any_value(dateid) as dateid, eventname from event where eventname ='Eagles' group by eventname;
以下是結果。
dateid | eventname -------+--------------- 1878 | Eagles
下列範例會傳回事件名稱為老鷹或冷戰孩子的任何 dateid 執行個體。
select any_value(dateid) as dateid, eventname from event where eventname in('Eagles', 'Cold War Kids') group by eventname;
以下是結果。
dateid | eventname -------+--------------- 1922 | Cold War Kids 1878 | Eagles