Nach_Feld sortieren

Nutzung

view: view_name {
Dimension: Feldname {
order_by_field: field_name
}
}
Hierarchie
order_by_field
Mögliche Feldtypen
Dimension, Dimensionsgruppe, Messen

Akzeptiert
Feldname

Die falsche Verwendung von order_by_field kann zu inkonsistentem, verwirrendem Verhalten führen.

Definition

Mit dem Parameter order_by_field können Sie die Sortierreihenfolge aus einer Dimension, einer Dimensionsgruppe oder einem anderen Feld desselben Typs verwenden, anstatt die Standardsortierung zu verwenden. Felder, auf die im Parameter order_by_field verwiesen wird, müssen dem Feldtyp des übergeordneten Feldes entsprechen. Eine Dimension kann nicht auf ein Feld von type: measure verweisen und umgekehrt.

Beispiel: Sie haben eine Tabelle, die sowohl eine status_id- als auch eine status_name-Spalte enthält. Wenn ein Nutzer in der Benutzeroberfläche nach Statusname sortiert, möchten Sie, dass die Namen in der Reihenfolge der Status-ID und nicht in der alphabetischen Reihenfolge der Namen angezeigt werden.

Zwischen einer Dimensions- oder Dimensionsgruppe und dem Feld, auf das der Parameter order_by_field verweist, sollte eine 1:1-Beziehung vorliegen, sodass die Gruppierungseigenschaften beider Felder identisch sind. Wenn Sie dies nicht gewährleisten, kann die Sortierung den Nutzern als willkürlich erscheinen.

Wenn es eine und nur eine status_id pro status_name gibt, könnten Sie Folgendes schreiben:

dimension: status_name {
  sql: ${TABLE}.status_name ;;
  order_by_field: status_id
}

order_by_field

Das kann hilfreich sein, wenn Sie einen nicht numerischen Messwerttyp, z. B. einen string, nach einem numerischen Messwerttyp sortieren möchten.

In diesem Beispiel ist ein String von Städten nach dem Messwert count sortiert:

measure: user_cities {
  type: string
  order_by_field: count
}