跳至主要內容
Administrator Guide
上次更新時間 :2023-06-23
概念︰SQL 和子查詢欄

概念︰SQL 和子查詢欄

您可以從
「資料元件」
窗格拖放 Workday 資料來源中的以下自訂欄類型︰
  • SQL 欄
  • 子查詢欄
建立 SQL 欄或子查詢欄時,在 SQL 運算式編輯器中按一下
檢視線上說明
,即可檢視 SQL 運算式參考。

SQL 欄

使用 SQL 欄,根據其他欄的條件建立新值。SQL 欄的作用類似於 SQL
WHERE
子句,但不允許使用
SELECT
陳述式使用 SQL 欄執行以下操作︰
  • 重新格式化資料。
  • 使用分隔符號串連值。
  • 傳回
    SUBSTRING
    在欄值內
  • 寫入
    CASE
    做為 IF 陳述式的陳述式。
  • 將某個字串取代為另一個字串。
  • 硬編碼值
CASE 陳述式
A
CASE
陳述式提供以條件和結果值開頭的條件邏輯。當第一個條件未成立時,陳述式會繼續執行下一個條件和得出的值。若未符合任何條件,則會傳回最終結果。
範例︰
CASE WHEN Condition 1 THEN Result 1 WHEN Condition 2 THEN Result 2 ELSE Final Result END
SQL 欄基準
  • SQL 欄應盡可能簡潔,以備其他使用者需要維護時使用。
  • 盡量減少硬編碼。如果無法避免使用硬編碼,請在參照值時使用 Workday ID (WID) 或參考 ID。
  • 使用名稱一致的 SQL 欄,加快建置中繼資料和資料載入器的速度。
  • 使用自訂 SQL 命令
    TO_ACCOUNT_CODE
    以底線取代空格和特殊字元。
  • 使用
    TIMESTAMP
    的欄類型
    TIME
    相關欄位Adaptive Planning 會自動使用
    TIMESTAMP
    的日期欄,格式為
    MM/DD/YYYY HH:MM:SS AM
    即使指定了其他格式,
  • 使用適用於所有資料來源的相同分隔符號串連。

子查詢欄

子查詢欄的作用類似於
JOIN
條件複製到另一個表格。如果另一個表格符合條件,
JOIN
傳回 True/False 布林值。建置
JOIN
使用主要表格和選取的相關表格的陳述式。您可以指定記錄
EXISTS
DOES NOT EXIST
。您也可以使用包含整數結果的子查詢欄。若要產生數值結果,請包含
SUM
,
COUNT
,
MIN
,或
MAX
在聯結運算式中
在另一個表格中查詢值時,子查詢欄會有所幫助。可用來︰
  • 請驗證值是否存在於另一個表格中。
  • 針對 True/False 結果篩選該表格。
  • 計算該表格中重複值的數目。
  • 尋找成本中心的最高成本。