查詢

建立查詢

查詢可讓您根據條件選擇目標。 您可以將區段代碼關聯至查詢結果,並將其他資料插入。
有關查詢示例的詳細資訊,請參閱此部分

注意

使用Oracle時,查詢活動與CLOB欄位不相容。

有關使用和管理其他資料的詳細資訊,請參閱添加資料

Edit query…​連結可讓您以下列方式定義人口的定位類型、限制和選擇標準:

  1. 選取定位和篩選維度。 依預設,會從收件者選取目標。 限制篩選清單與用於傳送定位的篩選清單相同。

    定位維度與我們將處理的元素類型一致,例如操作所定位的人口。

    篩選維度可以收集這些元素,例如與目標人員相關的資訊(合約、完整和最終結算等)。

    如需詳細資訊,請參閱定位和篩選維度

    如有必要,查詢可以根據傳入轉換的資料,方法是在選擇定位和篩選維度時選取​Temporary schema

  2. 使用精靈定義人口族群。 要輸入的欄位可以根據目標類型而有所不同。 您可以使用​Preview​標籤,以您目前的准則預覽目標人口。

    有關建立和使用篩選器或查詢的詳細資訊,請參閱此部分

  3. 如果您在步驟1中選擇了​Filtering conditions​或使用​Filters > Advanced filter…​選項,則以後必須手動添加篩選條件。

    您也可以勾選對應的方塊,以新增資料分組條件。 若要這麼做,篩選維度必須與查詢的定位維度不同。 有關分組的詳細資訊,請參閱此部分

    您也可以使用運算式產生器,並結合邏輯選項AND、OR和EXCEPT,來新增更多條件。 然後,您可以預覽​Corresponding SQL query…​的條件組合。 有關詳細資訊,請參閱此部分

    如果您日後想要重新使用篩選,請加以儲存。

添加資料

附加欄可讓您收集有關目標人口的其他資訊,例如合約編號、電子報訂閱或來源。 此資料可儲存在Adobe Campaign資料庫或外部資料庫中。

Add data…​連結可讓您選取要收集的其他資料。

首先,選擇要添加的資料類型:

  • 選擇​Data linked to the filtering dimension​以選擇Adobe Campaign資料庫中的資料。
  • 選擇​External data​以從外部資料庫添加資料。 只有在您購買了​Federated Data Access​選項時,此選項才可用。 有關詳細資訊,請參閱訪問外部資料庫(FDA)
  • 選取​An offer proposition​選項以新增一組欄,讓您儲存選件引擎產生的最佳提案。 只有在您購買了​Interaction​模組時,此選項才可用。

如果平台上未安裝可選模組,則不顯示此階段。 你會被帶到下一個階段。

若要新增Adobe Campaign資料庫中的資料:

  1. 選擇要添加的資料類型。 這可以是屬於篩選維度的資料,或是儲存在連結表格中的資料。

  2. 如果資料屬於查詢的篩選維,只需在可用欄位清單中選擇它,即可在輸出列中顯示。

    您可以新增:

    • 根據來自目標人口的資料或匯總(上個月的待定購買數、收據的平均金額等)計算的欄位。 例如,請轉至選擇資料

    • 使用輸出列清單右側的​Add​按鈕建立的新欄位。

      您也可以新增資訊集合,例如合約清單、最後5個交貨等。 系列會與欄位相符,欄位可針對相同的描述檔(1-N關係)有多個值。 有關詳細資訊,請參閱編輯其他資料

要添加連結到目標人口的資訊集,請執行以下操作:

  1. 在嚮導的第一步,選擇​Data linked to the filtering dimension​選項:

  2. 選擇包含要收集的資訊的表,然後按一下​Next

  3. 如有必要,請在​Data collected​欄位中選取其中一個值,以指定您要保留的系列元素數。 依預設,系列的所有行都會復原,然後依照下列步驟中指定的條件進行篩選。

    • 如果系列的單一元素與此系列的篩選條件一致,請在​Data collected​欄位中選取​Single row

      重要

      此模式優化了由於集合元素上有直接聯繫而生成的SQL查詢。

      如果不尊重初始條件,結果可能有缺陷(缺少線或重疊線)。

    • 如果選擇恢復幾行(Limit the line count),可以指定要收集的行數。

    • 如果收集的欄包含匯總,例如宣告的失敗次數、網站的平均支出等。 您可以使用​Aggregates​值。

  4. 指定系列的子選取範圍。 例如:僅限過去15天內購買。

  5. 如果您已選取​Limit the line count​選項,請定義要篩選所收集資料的順序。 一旦收集的行數超過您指定要保留的行數,篩選順序就可讓您指定要保留的行。

範例:針對簡單收件者屬性進行定位

在以下示例中,查詢試圖確定18至30歲在法國生活的男子。 此查詢將用於工作流程中,例如使其成為獨家選件。

注意

其他查詢示例顯示在本節中。

  1. 為查詢命名,然後選擇​Edit query…​連結。

  2. 在可用篩選器類型清單中選擇​Filtering conditions

  3. 輸入建議目標的不同標準。 以下條件是使用AND選項組合的。 要納入選舉,接受者必須滿足以下四個條件:

    • 標題為"Mr"的收件者(也可使用​Geder​欄位並選取​Male​作為值)。
    • 30歲以下的收件者。
    • 18歲以上的收件者。
    • 住在法國的收件者。

    您可以查看與條件組合匹配的SQL:

  4. 您可以在相關標籤中預覽符合您查詢的收件者,以檢查標準是否正確:

  5. 儲存您的篩選條件,以便您稍後再按一下​Finish > OK,以便再次使用。

  6. 透過新增其他活動,繼續編輯您的工作流程。 啟動後,上一個查詢步驟完成後,會顯示找到的收件者數。 您可使用滑鼠快顯功能表(以滑鼠右鍵按一下轉場> Display the target…)來顯示更多詳細資訊。

輸出參數

  • tableName
  • 架構
  • recCount

這三個值集標識查詢所定位的人口。 tableName 是記錄目標標識符的表的名稱, schema 是人口的模式(通常是nms:recipient), recCount 是表中的元素數。

此值是工作表的模式。 此參數對於具有​tableName​和​schema​的所有轉場都有效。

優化查詢

下節提供最佳實務,以最佳化在Adobe Campaign上執行的查詢,以限制資料庫的工作量並改善使用者體驗。

連接和索引

  • 高效查詢依賴索引。

  • 對所有連接使用索引。

  • 在架構上定義連結將決定連接條件。 連結的表在主鍵上應有唯一的索引,且連接應在此欄位上。

  • 通過在數字欄位上定義鍵(而不是字串欄位)來執行聯接。

  • 避免執行外連接。 盡可能使用零ID記錄來實現外連接功能。

  • 為聯接使用正確的資料類型。

    確保where子句與欄位的類型相同。

    一個常見的錯誤是:iBlacklist='3',其中iBlacklist是數值欄位,而3表示文字值。

    請確定您知道查詢的執行計畫。 避免完整表掃描,尤其是每分鐘執行的即時查詢或近乎即時的查詢。

有關詳細資訊,請參閱資料模型最佳實踐資料庫映射部分。

函式

  • 請注意Lower(...)等函式。 使用Lower函式時,不使用Index。

  • 使用「贊」指令或「上」或「下」指令仔細檢查查詢。 在用戶輸入上應用「上」,而不是在資料庫欄位上。

    有關函式的詳細資訊,請參閱本節

篩選維

使用查詢的篩選維度,而不是使用"exists sach"運算子。

在查詢中,篩選條件中的「存在(如)」條件不有效。 它們等效於SQL中的子查詢:

select iRecipientId from nmsRecipient where iRecipientId IN (select iRecipientId from nmsBroadLog where (...))

最佳實務是改用查詢的篩選維度:

SQL中的篩選維等效於內部連接:

select iRecipientId from nmsRecipient INNER JOIN nmsBroadLog ON (...)

有關篩選維度的詳細資訊,請參閱本節

架構

  • 建立與生產平台類似的卷、參數和架構開發平台。

  • 在開發與生產環境中使用相同的值。 請盡量使用相同的:

    • 作業系統,
    • 版本、
    • 資料、
    • 應用程式、
    • 卷。
    注意

    在開發環境中運作的功能可能無法在資料可能不同的生產環境中運作。 嘗試找出主要差異,以預測風險並準備解決方案。

  • 建立與目標卷匹配的配置。 大卷需要特定配置。 對100,000個收件者有效的設定,可能無法對10,000,000個收件者有效。

    考慮系統上線時的擴展方式。 只是因為某種東西可以小規模運作,並不意味著它適合大量使用。 測試時,應使用與生產卷相似的卷。 您還應評估在尖峰時間、尖峰天數以及整個項目生命週期中卷(調用數、資料庫大小)的更改的影響。

本頁內容