En algunas situaciones, puede que quieras cambiar la forma en que Looker da formato a las fechas.
Por ejemplo, si creas exploraciones e informes para usuarios de Europa, las fechas que tengan un formato totalmente numérico deben aparecer en el orden Día-Mes-Año. Por ejemplo, el 7 de junio del 2019 debe tener el formato 07/06/2019
o Jun 07, 2019
. El formato predeterminado de Looker muestra la fecha como 2019-06-07
. Aunque puedes usar funciones de SQL como DATE_FORMAT()
para cambiar el formato de una fecha, puede que no quieras escribir todo en SQL sin formato.
Usar Liquid en el parámetro html
Puedes usar el formato Liquid en el parámetro html
de una dimensión para cambiar el formato de cualquier campo que use un formato de fecha válido. Como Liquid espera una fecha válida, es mejor usar los periodos de un grupo de dimensiones que ya exista. No puedes cambiar los números de la semana o del mes, ya que se devuelven como números enteros.
Por ejemplo, puedes dar formato a ${created_date}
para que se muestre como Aug 23 22
en lugar del valor predeterminado de Looker 2022-08-23
:
dimension: date_formatted { sql: ${created_date} ;; html:{{ rendered_value | date: "%b %d, %y" }};; }
El formato de la sintaxis de cadena "%b %d, %y"
es el mismo que el de strftime
.
Como el parámetro html
usa el formato Liquid, el valor original del periodo no cambia, sino solo la forma en que se muestra al usuario. De esta forma, el orden en el que aparecen las fechas en una consulta no cambiará.
A continuación, se incluyen otros ejemplos que puedes usar. En la parte inferior de esta página se encuentra una referencia más amplia de los formatos disponibles.
Preajuste | Ejemplo |
%m/%d/%Y
|
05/06/2013 |
%A, %B %e, %Y
|
Miércoles, 5 de junio del 2013 |
%b %e %a
|
5 jun. (miércoles) |
Ejemplo
En el siguiente ejemplo de consulta de Exploración se muestran Fecha de los artículos del pedido y Semana de los artículos del pedido con un formato diferente y organizados en la etiqueta de grupo Fecha de creación para simular un grupo de dimensiones de fecha en el selector de campos de Exploración.
El formato personalizado muestra a los usuarios qué fecha y qué número de semana del año corresponden a los valores más altos de Número de artículos en orden descendente.
Consulta la página de documentación de group_label
para obtener más información sobre cómo usar el parámetro group_label
.
LookML
En el ejemplo de Explorar se usa el siguiente LookML:
# The original dimension group - hidden so that users can only choose from the formatted dates date and week timeframes dimension_group: created { hidden: yes type: time timeframes: [ raw, time, date, hour, hour_of_day, time_of_day, week, month, quarter, year ] sql: ${TABLE}.created_at ;; } # The customized timeframes, organized in the Explore field picker under the group label Created date dimension: date_formatted { group_label: "Created date" label: "Date" type: date_raw sql: ${created_date} ;; html: {{ rendered_value | date: "%b %d, %y" }};; } dimension: week_formatted { group_label: "Created date" label: "Week" type: date_raw sql: ${created_week} ;; html: {{ rendered_value | date: "Week %U (%b %d)" }};; }
strftime Reference
En la siguiente tabla se enumeran varios formatos de strftime
. Ten en cuenta que es posible que no todos los formatos se rendericen como se espera en Looker.
especificador | Sustituido por | Ejemplo |
%a | Nombre abreviado del día de la semana * | J |
%A | Nombre completo del día de la semana * | Jueves |
%b | Nombre abreviado del mes * | Ago |
%B | Nombre completo del mes * | Agosto |
%c | Representación de fecha y hora * | Thu Aug 23 14:55:02 2001 |
%C | Año dividido entre 100 y truncado a un número entero (00-99) | 20 |
%d | Día del mes, con ceros iniciales (01-31) | 23 |
%D | Fecha corta DD/MM/AA, equivalente a %m/%d/%y | 23/08/01 |
%e | Día del mes, con espacios ( 1-31) | 23 |
%F | Fecha corta AAAA-MM-DD, equivalente a %Y-%m-%d | 2001-08-23 |
%g | Año basado en semanas, dos últimos dígitos (00-99) | 1 |
%G | Año basado en semanas | 2001 |
%h | Nombre abreviado del mes * (igual que %b) | Ago |
%H | Hora en formato de 24 horas (00-23) | 14 |
%I | Hora en formato de 12 horas (01-12) | 02 |
%j | Día del año (001-366) | 235 |
%k | Hora en formato de 24 horas. Los números de un solo dígito van precedidos de un espacio en blanco (0-23). | 14 |
%l | Hora en formato de 12 horas. Los números de un solo dígito van precedidos de un espacio en blanco (0-12). | 2 |
%m | Mes expresado como un número decimal (01-12). | 8 |
%M | Minuto (00-59) | 55 |
%n | Carácter de nueva línea ('\n') | |
%P | Indicador de a. m. o p. m. en minúsculas | p.m. |
%r | Hora del reloj de 12 horas * | 14:55:02 |
%R | Hora en formato de 24 horas HH:MM, equivalente a %H:%M | 14:55 |
%s | Número de segundos transcurridos desde el inicio del registro de tiempo, 1970-01-01 00:00:00 +0000 (UTC). | 1566236649 |
%S | Segundo (00-61) | 2 |
%t | Carácter de tabulación horizontal ('\t') | |
%T | Formato de hora ISO 8601 (HH:MM:SS), equivalente a %H:%M:%S | 14:55:02 |
%u | Día de la semana según ISO 8601 como número, con el lunes como 1 (1-7). | 4 |
%U | Número de semana con el primer domingo como primer día de la semana 1 (00-53). | 33 |
%V | Número de semana ISO 8601 (01-53) | 34 |
%w | Día de la semana como número decimal, donde el domingo es 0 (0-6). | 4 |
%W | Número de semana con el primer lunes como primer día de la semana (00-53). | 34 |
%x | Representación de la fecha * | 23/08/01 |
%X | Representación de la hora * | 14:55:02 |
%y | Año (dos últimos dígitos) (00-99) | 1 |
%Y | Año | 2001 |
%z | Desfase ISO 8601 con respecto al tiempo UTC en la zona horaria (1 minuto=1, 1 hora=100). Si no se puede determinar la zona horaria, no se incluye ningún carácter. | 100 |
%Z | Nombre o abreviatura de la zona horaria *Si no se puede determinar la zona horaria, no se incluye ningún carácter. | CDT |
%% | Un signo % | % |