sql_table_name (für Joins)

Auf dieser Seite wird auf den Parameter sql_table_name verwiesen, der Teil eines Join ist.

sql_table_name kann auch als Teil einer Ansicht verwendet werden. Weitere Informationen finden Sie auf der Dokumentationsseite zum Parameter sql_table_name (für Ansichten).

sql_table_name kann auch als Teil eines Explores verwendet werden. Dies wird auf der Dokumentationsseite zum Parameter sql_table_name (für Explores) beschrieben.

Nutzung

explore: view_name {
  join: view_name {
    sql_table_name: table_name ;;
  }
}
Hierarchie
sql_table_name
Standardwert
Keine

Akzeptiert
Ein Tabellenname in Ihrer Datenbank

Besondere Regeln

Definition

In der Regel wird die abzufragende Tabelle durch die Ansicht definiert, auf der ein join basiert.

Mit sql_table_name können Sie die Tabelle in Ihrer Datenbank festlegen, die von einem join abgefragt werden soll. Das ist ungewöhnlich, kann aber nützlich sein, wenn mehrere Tabellen dasselbe Schema haben. In diesem Fall kann dieselbe Ansicht verwendet werden, um alle Tabellen zu beschreiben. Mit sql_table_name können Sie angeben, welche Tabellen von der Ansicht verwendet werden sollen, die Sie verknüpfen. In solchen Fällen sollten Sie extends oder Verfeinerungen verwenden.

Tabellennamen eingrenzen

Wenn Sie nur den Tabellennamen angeben, verwendet Looker den Standardsuchpfad (die Datenbank und das Schema), den Ihr Looker-Administrator in den Einstellungen für die Datenbankverbindung konfiguriert hat. Weitere Informationen finden Sie im Abschnitt Wichtige Hinweise auf dieser Seite.

Wenn Sie auf eine Tabelle in einer anderen Datenbank und einem anderen Schema verweisen müssen, die sich nicht im Standardsuchpfad des Datenbanknutzers befindet, können Sie den Tabellennamen mit dem Format <database_name>.<schema_name>.<table_name> eingrenzen, um auf eine andere Datenbank oder ein anderes Schema zu verweisen:

  • Wenn Sie auf eine Tabelle aus einem anderen Schema verweisen möchten, verwenden Sie <schema_name>.<table_name>, wie im Beispiel auf dieser Seite gezeigt.
  • Wenn Sie auf eine Tabelle aus einer anderen Datenbank verweisen möchten, verwenden Sie den vollständigen <database_name>.<schema_name>.<table_name>.

Bei einer Google BigQuery-Verbindung können Sie auf eine Tabelle in einem anderen Projekt und Dataset verweisen, indem Sie den Tabellennamen im Format <project_name>.<dataset_name>.<table_name> angeben. Weitere Informationen finden Sie auf der Dokumentationsseite Google BigQuery-Verbindung.

Beispiele

In diesem Beispiel wird der customers-Join auf die Tabelle customer_1 aus dem Standardschema angewiesen:

explore: orders {
  join: customers {
    sql_table_name: customer_1 ;;
    sql_on: ${order.customer_id} = ${customer.id} ;;
  }
}

In diesem Beispiel wird der customers-Join auf die Tabelle customer_1 aus dem Schema analytics angewendet, indem der Tabellenname bereichsbezogen ist und den Schemanamen enthält (im Format <schema_name>.<table_name>):

explore: orders {
  join: customers {
    sql_table_name: analytics.customer_1 ;;
    sql_on: ${order.customer_id} = ${customer.id} ;;
  }
}

Wichtige Punkte

Auf Tabellen, auf die von sql_table_name verwiesen wird, muss über die aktuelle Verbindung zugegriffen werden können.

Wenn der Parameter sql_table_name in einem join-Objekt verwendet wird, wird dieses join-Objekt in einem explore-Objekt definiert, das wiederum in einem model-Objekt enthalten ist. Die Hierarchie auf dieser Seite zeigt diese Beziehungskette. Das Modellobjekt enthält eine definierte Datenbank connection. Wenn Sie im Parameter sql_table_name auf eine Datenbanktabelle verweisen, muss die Tabelle über die zugehörige Verbindung zugänglich sein, die in der Modelldatei angegeben ist.

Die Standard-Datenbank und das Schema (oder für Google BigQuery das Abrechnungsprojekt und das Dataset) werden von Ihrem Looker-Administrator definiert, wenn er die Looker-Verbindung zu Ihrer Datenbank für die Datenbankverbindung erstellt.

Wenn Sie eine join anders als die zugrunde liegende Tabelle benennen möchten, wenden Sie sql_table_name auf Ansichtsebene an.

Die Verwendung von sql_table_name auf der Ebene join, wie auf dieser Seite beschrieben, ist unüblich. Sie sollte nur verwendet werden, wenn dieselbe Ansicht mehrere Tabellen beschreiben kann.

Die üblichere Methode ist, sql_table_name auf Ansichtsebene zu verwenden, um eine Ansicht anders als den zugrunde liegenden Tabellennamen zu benennen.

Anstelle von

Model File

explore: orders {
  join: customers {
    sql_table_name: customer_1 ;;
    sql_on: ${order.customer_id} = ${customer.id} ;;
  }
}}

Gehen Sie dazu so vor:

Model File

explore: orders {
  join: customers {
    sql_on: ${order.customer_id} = ${customer.id} ;;
  }
}

Datei ansehen

view: customers {
  sql_table_name: customer_1 ;;
}