用量
视图:view_name {
dimension: field_name {
order_by_field: field_name
}
}
dimension: field_name {
order_by_field: field_name
}
}
层次结构
order_by_field |
可能的字段类型
维度、维度组、衡量接受
字段名称 |
不正确使用
order_by_field
可能会导致出现不一致且令人困惑的行为。
定义
借助 order_by_field
参数,您可以使用维度、维度组中的排序顺序,或对同一类型的另一个字段应用排序顺序,而无需使用默认排序顺序。order_by_field
参数引用的字段必须与父字段的字段类型匹配。维度不能引用 type: measure
字段,反之亦然。
例如,您的表格同时包含 status_id
和 status_name
列。如果用户在界面中按状态名称排序,您希望这些名称按状态 ID 的顺序(而不是这些名称的字母顺序)显示。
维度或维度组与
order_by_field
参数引用的字段之间应存在 1 对 1 的关系,以便这两个字段的分组特征完全相同。如果您不保证这一点,对用户来说,排序可能是随机的。
如果每个 status_name
有一个且只有一个 status_id
,您可以编写:
dimension: status_name {
sql: ${TABLE}.status_name ;;
order_by_field: status_id
}
使用测量时,order_by_field
可让您使用不同测量值的排序顺序。
如果您想按数字测量类型对非数值测量类型(例如 string
)进行排序,上述做法将非常有用。
在此示例中,城市字符串按 count
衡量指标进行排序:
measure: user_cities {
type: string
order_by_field: count
}