É comum que os usuários queiram interagir com números curtos. Por exemplo, eles preferem US $2,5 milhões a uma string longa, como US $2.523.093,25. É possível criar exibições de números curtos definindo várias medidas do LookML, como uma para mostrar o valor real, outra dividida por 1.000 ou uma com casas decimais limitadas, e assim por diante.
O LookML pode exibir essas informações automaticamente com uma sintaxe value_format
mais avançada.
Sintaxe
Use este padrão para definir formatos de valor com condições:
[if_condition]format; [if_condition]format; else_format
Como o valor do parâmetro value_format
já está entre aspas duplas no LookML, todas as aspas duplas aninhadas precisam ser escapadas usando o caractere barra invertida \
.
Exemplo com números grandes
Para criar números como 12,23 milhões ou 2,33 mil, use o seguinte código:
[>=1000000]0.00,,\"M\";[>=1000]0.00,\"K\";
Ou sem casas decimais:
[>=1000000]0,,\"M\";[>=1000]0,\"K\";0
Confira a medida no LookML usando esse formato, com os sinais de dólar adicionados:
measure: global_amount { type: sum sql: ${TABLE}.total value_format: "[>=1000000]$0.00,,\"M\";[>=1000]$0.00,\"K\";$0.00" drill_fields: invoices* }
Exemplo com números negativos grandes
Você pode usar uma sintaxe semelhante com números negativos. Para criar números como -12,23M ou -2,33K, use o seguinte código:
[<=-1000000]0.00,,\"M\";[<=-1000]0.00,\"K\";
Ou sem casas decimais:
[<=-1000000]0,,\"M\";[<=-1000]0,\"K\";0
Confira a medida no LookML usando esse formato, com os sinais de dólar adicionados:
measure: global_amount_negative { type: sum sql: ${TABLE}.total value_format: "[<=-1000000]$0.00,,\"M\";[<=-1000]$0.00,\"K\";$0.00" drill_fields: invoices* }