convert_tz

用量

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

接受
布林值 (是或否)

定義

Looker 提供多種時區設定,可在不同時區之間轉換時間資料。Looker 預設會轉換時區。如果不想讓 Looker 對特定 dimensiondimension_group (含 type: time) 或 filter 欄位執行時區轉換,可以使用 convert_tz 參數。如果欄位已轉換為適當的時區,或在某些進階情況下需要避免時區重複轉換,這項功能就非常實用。

一般來說,只有在所有時間值都轉換為相同時區時,時間計算 (差異、持續時間等) 才能正確運作。編寫 LookML 時,請務必注意時區。

範例

請勿對local_created維度群組執行時區轉換:

dimension_group: local_created {
  type: time
  timeframes: [time, date, week, month]
  sql: ${TABLE}.local_created_at ;;
  convert_tz: no
}

注意事項

convert_tz: no 只會套用至維度,不會套用至使用該維度的篩選器。換句話說,篩選器一律會執行時區轉換。指定 convert_tz: no 時,系統會以資料庫時區顯示以時間為準的資料值,但會使用查詢時區進行篩選。

由於篩選器一律會進行時區轉換,資料庫時區和查詢時區的差異可能會導致資料意外納入或排除在資料集中。為避免發生這種情況,請確保查詢時區與資料庫時區設為相同值。

如果啟用「使用者專屬時區」,請將時區下拉式選單 (位於「探索」、「Look」和資訊主頁的「執行」按鈕旁) 設為與資料庫時區相同的值。如果停用「使用者專屬時區」,請將「查詢時區」設為與資料庫時區相同的值。

如果您使用自訂篩選器,請務必啟用時區轉換功能,確保日期比較結果有效。如果您使用 convert_tz: no 關閉時區轉換,並在自訂篩選器中加入該欄位,日期比較結果可能無效。

支援時區轉換的資料庫方言

如要讓 Looker 在 Looker 專案中轉換時區,資料庫方言必須支援時區轉換。下表顯示最新版 Looker 中支援時區轉換的方言:

方言 是否支援?
Actian Avalanche
Amazon Athena
Amazon Aurora MySQL
Amazon Redshift
Amazon Redshift 2.1+
Amazon Redshift Serverless 2.1+
Apache Druid
Apache Druid 0.13+
Apache Druid 0.18+
Apache Hive 2.3+
Apache Hive 3.1.2+
Apache Spark 3+
ClickHouse
Cloudera Impala 3.1+
Cloudera Impala 3.1+ with Native Driver
Cloudera Impala with Native Driver
DataVirtuality
Databricks
Denodo 7
Denodo 8 & 9
Dremio
Dremio 11+
Exasol
Google BigQuery Legacy SQL
Google BigQuery Standard SQL
Google Cloud PostgreSQL
Google Cloud SQL
Google Spanner
Greenplum
HyperSQL
IBM Netezza
MariaDB
Microsoft Azure PostgreSQL
Microsoft Azure SQL Database
Microsoft Azure Synapse Analytics
Microsoft SQL Server 2008+
Microsoft SQL Server 2012+
Microsoft SQL Server 2016
Microsoft SQL Server 2017+
MongoBI
MySQL
MySQL 8.0.12+
Oracle
Oracle ADWC
PostgreSQL 9.5+
PostgreSQL pre-9.5
PrestoDB
PrestoSQL
SAP HANA
SAP HANA 2+
SingleStore
SingleStore 7+
Snowflake
Teradata
Trino
Vector
Vertica