SELECT FROM < model > 。CASES (DMX)

適用於: SQL Server Analysis Services

支援鑽研,並傳回用來定型模型的案例。 如果您已在採礦結構和採礦模型上啟用鑽研,而且您擁有適當的許可權,您也可以傳回未包含在模型中的結構資料行。

如果未在採礦模型上啟用鑽研,此語句將會失敗。

注意

在資料採礦延伸模組 (DMX) 中,您只能在建立模型時啟用鑽研。 您可以使用 SQL Server Data Tools (SSDT) 將鑽研新增至現有的模型,但必須先重新處理模型,才能檢視或查詢案例。

如需如何啟用鑽研的詳細資訊,請參閱 CREATE MINING MODEL (DMX) SELECT INTO (DMX) ALTER MINING STRUCTURE (DMX)

語法

  
SELECT [FLATTENED] [TOP <n>] <expression list> FROM <model>.CASES  
[WHERE <condition expression>][ORDER BY <expression> [DESC|ASC]]  

引數

n
選擇性。 整數,指定要傳回的資料列數目。

運算式清單
以逗號分隔的運算式清單。 運算式可以包含資料行識別碼、使用者定義函數、UDF 和 VBA 函式,以及其他。

若要包含未包含在採礦模型中的結構資料行,請使用 函式 StructureColumn('<structure column name>')

model
模型識別碼。

條件運算式
限制從資料行清單傳回之值的條件。

expression
選擇性。 傳回純量值的運算式。

備註

如果在採礦模型和採礦結構上啟用鑽研,則屬於具有模型鑽研許可權的角色成員的使用者,而且結構可以存取採礦結構的資料行,而該資料行不包含在採礦模型中。 因此,若要保護敏感性資料或個人資訊,您應該建構資料來源檢視來遮罩個人資訊,並在必要時才對採礦結構授與 AllowDrillthrough 許可權。

Lag (DMX) 函式可以搭配時間序列模型使用,以傳回或篩選每個案例與初始時間之間的時間延遲。

在 WHERE 子句中使用 IsInNode (DMX) 函式只會傳回與架構資料列集之NODE_UNIQUE_NAME資料行所指定的節點相關聯的案例。

範例

下列範例是以以資料庫及其相關聯採礦模型為基礎的 AdventureWorksDW2022 採礦結構 Targeted Mailing 為基礎。 如需詳細資訊,請參閱 基本資料採礦教學課程

範例 1:鑽研模型案例和結構資料行

下列範例會傳回用來測試 Targeted Mailing 模型之所有案例的資料行。 如果建置模型的採礦結構沒有鑒效組測試資料集,此查詢會傳回 0 個案例。 您可以使用運算式清單只傳回您需要的資料行。

SELECT * FROM [TM Decision Tree].Cases  
WHERE IsTestCase();  

範例 2:鑽研至特定節點中的定型案例

下列範例只會傳回用來定型叢集 2 的案例。 叢集 2 的節點具有 NODE_UNIQUE_NAME 資料行的值 '002'。 此範例也會傳回一個結構資料行 [Customer Key],該資料行不是採礦模型的一部分,並提供資料行的別名 CustomerID 。 請注意,結構資料行的名稱會以字串值的形式傳遞,因此必須以引號括住,而不是括弧。

SELECT StructureColumn('Customer Key') AS CustomerID, *   
FROM [TM_Clustering].Cases  
WHERE IsTrainingCase()  
AND IsInNode('002')  

若要傳回結構資料行,必須在採礦模型和採礦結構上啟用鑽研許可權。

注意

並非所有採礦模型類型都支援鑽研。 如需支援鑽研之模型的資訊,請參閱 鑽研查詢(資料採礦)。

另請參閱

SELECT (DMX)
資料採礦延伸模組 (DMX) 資料定義語句
資料採礦延伸模組 (DMX) 資料動作陳述式
資料採礦延伸模組 (DMX) 陳述式參考