full_suggestions

用量

view: view_name {
  dimension: field_name {
    full_suggestions: yes 
  }
}
階層
full_suggestions
可能的欄位類型
維度、維度群組、篩選器、參數

接受
布林值 (是或否)

定義

當使用者在支援建議的欄位類型篩選探索時,Looker 預設會建議欄位的可能值 (如要瞭解如何影響篩選建議,請參閱「變更篩選建議」說明文件頁面)。為篩選器欄位提供建議時,Looker 會對資料庫執行查詢,以擷取欄位的相異值清單。Looker 通常會對篩選器欄位執行下列查詢,藉此產生這些建議:

SELECT DISTINCT field_name FROM table
WHERE (field_name LIKE '%' OR field_name LIKE '% %')
GROUP BY 1 ORDER BY 1 LIMIT 1000

full_suggestions 參數會控管 Looker 查詢資料庫的方式,以便在「探索」的篩選器中提供欄位值建議:

  • full_suggestions: no:Looker 會使用一般篩選條件建議查詢,並只查詢包含篩選條件欄位的檢視區塊。
  • full_suggestions: yes:Looker 會將「探索」邏輯新增至篩選器建議查詢,也就是說,Looker 會納入查詢篩選器欄位所需的任何「探索」聯結,並納入「探索」參數的邏輯,包括下列參數:

預設行為

如果未指定欄位的 full_suggestions 參數,Looker 會查詢建議值,並採取下列行為:

  • 如果探索使用 sql_always_whereaccess_filteralways_join,Looker 預設會採用 full_suggestions: yes 行為。由於 access_filtersql_always_wherealways_join 參數會對探索查詢套用限制,因此這些限制也會套用至篩選器建議查詢。如要進一步瞭解 Looker 如何根據查詢限制提供探索建議,請參閱「使用 sql_always_whereaccess_filter 探索時的注意事項」。
  • 否則,Looker 會預設為 full_suggestions: no 行為,只查詢篩選器欄位的檢視畫面,且不包含任何探索的邏輯。full_suggestions: no 設定可提升篩選器建議的效能,因為 Looker 會查詢單一資料表,不含任何聯結,也不會使用探索中定義的任何邏輯。

範例

如要提示 Looker 在提供維度的篩選條件建議時,使用「探索」的邏輯查詢資料庫,請在維度的定義中加入 full_suggestions: yes

dimension: project_name {
  type: string
  sql: ${TABLE}.project_name ;;
  full_suggestions: yes
}

使用 sql_always_whereaccess_filter 探索資料的注意事項

sql_always_whereaccess_filter 參數通常用於控管資料存取權。在探索中,只要使用 sql_always_whereaccess_filter,Looker 就會對支援建議的欄位類型套用這些限制,並提供篩選建議。為避免使用者看到不適用的篩選器建議,Looker 會要求將探索邏輯 (full_suggestions:yes) 套用至探索中的篩選值建議。因此,如果 Explore 是以 sql_always_whereaccess_filter 定義,Looker 就不會針對以 full_suggestions:no 定義的欄位提供任何篩選器建議。

如果您有「探索」sql_always_whereaccess_filter,且您知道某個欄位不需要 sql_always_whereaccess_filter 邏輯,可以在欄位的定義中加入 bypass_suggest_restrictions:yes,覆寫該行為。bypass_suggest_restrictions:yes 陳述式會提示 Looker 提供篩選條件值建議的完整清單。