VALUEINLARGE ER 函數
VALUEINLARGE
函數確定 Int64 或 Integer 類型的指定輸入是否與指定清單中指定項的任何值相符。 如果指定的輸入與對指定清單的至少一條記錄執行指定運算式的結果相符,該函數則會回傳 True 的 布林值。 否則,它會回傳 FALSE 的 布林值。 若要了解與 VALUEIN
函數的不同處,請參閱本主題後面的使用方式說明章節。
語法
VALUEINLARGE (input, list, list item expression)
引數
input
:欄位
記錄清單 類型的資料來源項目的有效路徑。 此項目的值將符合。
list
:記錄清單
記錄清單 資料類型的資料來源的有效路徑。
list item expression
:運算式
一個有效的條件運算式,它指向或包含應用於相符的指定清單的單個欄位。
回傳值
布林值
產生的 布林值 值。
使用方式說明
當指定的輸入代表一個 Int64 或 Integer 類型的資料來源項目,對它的調用可以直接翻譯成 SQL 陳述式,指定的清單被轉換為一個臨時 SQL 表,透過執行單一 EXISTS JOIN
查詢在資料庫中進行比對。 否則,此函數會以VALUEIN
函數運作。
當指定的輸入表示設計為 Int64 和 Integer 類型以外的項的資料來源項目時,在設計階段會發生錯誤,通知您 VALUEINLARGE
函數不適用於設定的 ER 運算式。
當執行 VALUEINLARGE
函數運算式並且在此執行範圍內使用了多個臨時表時,會發生執行階段錯誤。
範例
您在模型對應中定義以下資料來源:
- 資料表記錄 類型的 In 資料來源。
- 此資料來源指的是 Intrastat 資料表。
- 將 跨公司 選項設定為 否。
- 導出欄位 類型的 InMemory 資料來源。
- 此資料來源包含運算式
WHERE (In, In.Port <> "")
。
- 此資料來源包含運算式
- 導出欄位 類型的 InFiltered 資料來源。
- 此資料來源包含運算式
FILTER (In, VALUEINLARGE(In.RecId, InMemory, InMemory.RecId)
。
- 此資料來源包含運算式
當資料來源 InFiltered 在公司 DEMF 的背景下被調用時,在應用程式資料庫中建立一個新的臨時表,在記憶體中收集的記錄識別碼清單被插入到這個表中,並產生以下 SQL 陳述式來回傳 Intrastat 表中的過濾記錄。
SELECT … from Intrastat T1
WHERE ((T1.PARTITION=?) AND (T1.DATAAREAID IN (N'DEMF'))) AND
EXISTS (SELECT 'x' FROM tempdb."DBO".? T2 WHERE ((T2.PARTITION=?) AND (T1.RecId=T2.RecId)))