SAS Visual Data Builder 支援表格和子查詢的聯結。可以將表格彼此聯結,包含自我聯結。可以將子查詢聯結到表格,也可以將子查詢聯結到子查詢。在聯結中使用子查詢時,會根據子查詢的輸出表格產生聯結條件。資料產生器最多可以支援
256 個表格的聯結。
當您將表格或子查詢放置到工作區時,資料產生器會自動嘗試決定聯結條件。當資料產生器使用外部索引鍵或相符欄自動建立聯結時,聯結會增加為內部聯結。資料產生器也支援左側、右側與完整聯結。如果不想要內部聯結,則必須手動指定聯結類型。
除了可以輕易地將聯結增加到資料查詢以外,資料產生器也可以產生明確宣告所有聯結的 SQL 陳述式。例如:可以在 WHERE 子句中指定內部聯結,例如:WHERE t1.order_id=t2.order_id
。但是,在 WHERE 子句中混合使用內部聯結以及在單一資料查詢中混合使用外部聯結類型,可能太複雜而不容易讀取和瞭解。
SAS Visual Data Builder 固定會使用明確宣告的內部聯結產生 SQL 陳述式。例如:請參閱下面的程式碼範例:
LEFT JOIN
LIB1.TRANSACTION_TYPE_DIM TRANSACTION_TYPE_DIM
ON CASH_FLOW_FACT.TRANSACTION_TYPE_KEY =
TRANSACTION_TYPE_DIM.TRANSACTION_TYPE_KEY
INNER JOIN
LIB1.TRANSACTION_DIM TRANSACTION_DIM
ON PARTY_DIM.SEGMENT_ID = TRANSACTION_DIM.SEGMENT_ID
AND PARTY_DIM.TRANSACTION_KEY = TRANSACTION_DIM.TRANSACTION_KEY