Simple Log Service ofrece funciones de conversión de unidades para transformar tamaños de datos e intervalos de tiempo entre distintas unidades.
Log Service proporciona las siguientes funciones de conversión de unidades.
Si desea utilizar cadenas en instrucciones analíticas, debe encerrarlas entre comillas simples (''). Las cadenas sin comillas o encerradas entre comillas dobles ("") indican nombres de campos o columnas. Por ejemplo,
'status'
indica la cadena status, mientras que
status
o
"status"
indican el campo de registro status.
|
Categoría |
Función |
Sintaxis |
Descripción |
SQL |
SPL |
|
Funciones de conversión de tamaño de datos |
convert_data_size(x) |
Convierte automáticamente un tamaño de datos a la unidad legible más adecuada. Por ejemplo, convierte 1024 KB a 1 MB y 1024 MB a 1 GB. Devuelve una cadena. |
√ |
× |
|
|
convert_data_size(x, unit) |
Convierte un tamaño de datos a la unidad especificada. Devuelve una cadena. |
√ |
× |
||
|
format_data_size(x, unit) |
Formatea un tamaño de datos en bytes como una cadena en la unidad especificada. Devuelve una cadena. |
√ |
× |
||
|
parse_data_size(x) |
Analiza sintácticamente una cadena que representa un tamaño de datos y devuelve el valor en bytes. Devuelve un decimal. |
√ |
× |
||
|
to_data_size_B(x) |
Convierte un tamaño de datos a su valor en bytes. Devuelve un double. |
√ |
× |
||
|
to_data_size_KB(x) |
Convierte un tamaño de datos a su valor en kilobytes (KB). Devuelve un double. |
√ |
× |
||
|
to_data_size_MB(x) |
Convierte un tamaño de datos a su valor en megabytes (MB). Devuelve un double. |
√ |
× |
||
|
to_data_size_GB(x) |
Convierte un tamaño de datos a su valor en gigabytes (GB). Devuelve un double. |
√ |
× |
||
|
to_data_size_TB(x) |
Convierte un tamaño de datos a su valor en terabytes (TB). Devuelve un double. |
√ |
× |
||
|
to_data_size_PB(x) |
Convierte un tamaño de datos a su valor en petabytes (PB). Devuelve un double. |
√ |
× |
||
|
Funciones de conversión de intervalos de tiempo |
format_duration(x) |
Formatea un intervalo de tiempo, proporcionado en segundos, como una cadena legible. |
√ |
× |
|
|
parse_duration(x) |
Analiza sintácticamente una cadena de duración, por ejemplo en formato |
√ |
× |
||
|
to_days(x) |
Convierte un intervalo de tiempo a su valor en días. Devuelve un double. |
√ |
× |
||
|
to_hours(x) |
Convierte un intervalo de tiempo a su valor en horas. Devuelve un double. |
√ |
× |
||
|
to_microseconds(x) |
Convierte un intervalo de tiempo a su valor en microsegundos. Devuelve un double. |
√ |
× |
||
|
to_milliseconds(x) |
Convierte un intervalo de tiempo a su valor en milisegundos. Devuelve un double. |
√ |
× |
||
|
to_minutes(x) |
Convierte un intervalo de tiempo a su valor en minutos. Devuelve un double. |
√ |
× |
||
|
to_most_succinct_time_unit(x) |
Convierte automáticamente un intervalo de tiempo a la unidad legible más concisa. Devuelve una cadena. |
√ |
× |
||
|
to_nanoseconds(x) |
Convierte un intervalo de tiempo a su valor en nanosegundos. Devuelve un double. |
√ |
× |
||
|
to_seconds(x) |
Convierte un intervalo de tiempo a su valor en segundos. Devuelve un double. |
√ |
× |
Función convert_data_size
Convierte un tamaño de datos a otra unidad, ya sea de forma automática o a una unidad destino específica.
Syntax
-
Convierte un tamaño de datos a la unidad óptima, determinada automáticamente por el sistema.
convert_data_size(x) -
Convierte un tamaño de datos a una unidad específica.
convert_data_size(x, unit)
Parameters
|
Parámetro |
Descripción |
|
x |
El tamaño de datos, que debe ser una cadena. |
|
unit |
La unidad destino. Valores válidos: KB, MB, GB, TB, PB, EB, ZB y YB. |
Return value type
Devuelve una cadena.
Examples
-
Ejemplo 1: Convertir 1200 KB a otra unidad.
-
Instrucción de consulta y análisis
* | SELECT convert_data_size('1200KB') El resultado es
1.17MB.
-
-
Ejemplo 2: El campo body_bytes_sent representa la cantidad de bytes enviados al cliente. Este ejemplo convierte el valor del campo a KB.
-
Instrucción de consulta y análisis
* | select convert_data_size(format_data_size(body_bytes_sent, 'KB')) La columna
_col0muestra los tamaños de datos convertidos, como 1.74KB, 11.38KB, 4.12KB y 1.19KB. La consulta utiliza primeroformat_data_sizepara convertir el valor debody_bytes_senta una cadena en KB y luego lo procesa conconvert_data_size.
-
Función format_data_size
Formatea un valor en bytes como una cadena en una unidad especificada.
Syntax
format_data_size(x, unit)
Parameters
|
Parámetro |
Descripción |
|
x |
El tamaño de datos en bytes. Debe ser un bigint. |
|
unit |
La unidad destino para la conversión. Valores válidos: KB, MB, GB, PB, TB, EB, ZB y YB. |
Return value type
Devuelve una cadena.
Examples
-
Ejemplo 1: El campo body_bytes_sent representa la cantidad de bytes enviados a un cliente. Este ejemplo convierte el valor del campo a kilobytes (KB).
-
Campo de ejemplo
body_bytes_sent:4619 -
Instrucción de consulta y análisis
* | select format_data_size(body_bytes_sent, 'KB') La columna
_col0en los resultados de la consulta y análisis contiene valores como 7.33 KB, 2.19 KB, 4.16 KB y 4.84 KB.
-
-
Ejemplo 2: Este ejemplo calcula la suma del campo body_bytes_sent y luego convierte el total a gigabytes (GB).
-
Campo de ejemplo
body_bytes_sent:4619 -
Instrucción de consulta y análisis
* | select format_data_size(sum(body_bytes_sent), 'GB') La columna _col0 devuelve 0.73 GB, que corresponde a la suma formateada de los valores del campo
body_bytes_sent.
-
parse_data_size
Analiza sintácticamente una cadena de tamaño de datos y devuelve el valor equivalente en bytes.
Syntax
parse_data_size(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El tamaño de datos a analizar. Debe ser una cadena. |
Return value type
Devuelve un valor de tipo decimal.
Examples
Convertir 1024 KB a su valor equivalente en bytes.
-
Instrucción de consulta
*| SELECT parse_data_size('1024KB') La consulta devuelve
1048576, que es el equivalente de 1024 KB en bytes.
Función to_data_size_B
Convierte un tamaño de datos a bytes.
Syntax
to_data_size_B(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El tamaño de datos. Este parámetro debe ser una cadena. |
Return value type
Devuelve un valor double.
Examples
Convertir 1024 KB a su valor equivalente en bytes.
-
Instrucción de consulta y análisis
* | select to_data_size_B('1024KB') El resultado de la consulta y análisis es
1048576.0, que corresponde al equivalente de 1024 KB en bytes.
to_data_size_KB
Convierte un tamaño de datos a kilobytes (KB).
Syntax
to_data_size_KB(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El tamaño de datos. Este valor debe ser una |
Return value type
El valor devuelto es un double.
Examples
El campo body_bytes_sent representa la cantidad de bytes enviados al cliente. Este ejemplo convierte el valor del campo a KB.
-
Instrucción de consulta y análisis
* | select to_data_size_KB(format_data_size(body_bytes_sent, 'KB')) La columna
_col0en los resultados de la consulta y análisis contiene los valores 3.52, 4.25, 3.2 y 1.69.
Función to_data_size_MB
Convierte un tamaño de datos a megabytes (MB).
Syntax
to_data_size_MB(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El tamaño de datos, que debe ser una cadena. |
Return value type
Esta función devuelve un valor double.
Examples
El campo body_bytes_sent representa la cantidad de bytes enviados al cliente. Este ejemplo convierte el total a megabytes (MB).
-
Instrucción de consulta y análisis
* | select to_data_size_MB(format_data_size(sum(body_bytes_sent), 'KB')) La consulta devuelve
814.49, que corresponde a la suma debody_bytes_sentconvertida a megabytes (MB).
Función to_data_size_GB
Convierte un tamaño de datos a gigabytes (GB).
Syntax
to_data_size_GB(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El tamaño de datos a convertir. El valor debe ser una cadena. |
Return value type
Un valor double.
Examples
El campo body_bytes_sent representa la cantidad de bytes enviados al cliente. Este ejemplo convierte el total a gigabytes (GB).
-
Instrucción de consulta y análisis
* | select to_data_size_GB(format_data_size(sum(body_bytes_sent), 'KB')) La consulta devuelve
0.79. Este valor representa el total de bytes enviados en gigabytes (GB).
Función to_data_size_TB
Convierte un tamaño de datos a terabytes (TB).
Syntax
to_data_size_TB(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El tamaño de datos, especificado como cadena. |
Return value type
Devuelve un valor double.
Examples
El campo body_bytes_sent representa la cantidad de bytes enviados a un cliente. Este ejemplo convierte el total a terabytes (TB).
-
Instrucción de consulta
* | select to_data_size_TB(format_data_size(sum(body_bytes_sent), 'KB')) La consulta devuelve una sola columna,
_col0, con el valor0.01, que representa la suma debody_bytes_senten terabytes (TB).
Función to_data_size_PB
Convierte un tamaño de datos a petabytes (PB).
Syntax
to_data_size_PB(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El tamaño de datos. El valor debe ser una cadena. |
Return value type
Devuelve un double.
Examples
Convertir 1,048,576 GB a petabytes (PB).
-
Instrucción de consulta y análisis
*| SELECT to_data_size_PB('1048576GB') Los resultados de la consulta y análisis devuelven
1.0, lo que significa que 1,048,576 GB equivalen a 1.0 PB.
Función format_duration
Formatea un intervalo de tiempo en segundos como una cadena legible.
Syntax
format_duration(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El intervalo de tiempo a formatear. El valor debe ser un double. |
Return value type
Devuelve el intervalo de tiempo formateado como una cadena.
Examples
Formatea 235 segundos como 3 minutes, 55 seconds.
-
Instrucción de consulta
* | SELECT format_duration(235) La columna _col0 devuelve
3 minutes, 55 seconds.
parse_duration
Analiza sintácticamente una cadena de intervalo de tiempo en el formato 0 00:00:00.000.
Syntax
parse_duration(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El intervalo de tiempo a analizar. El valor debe ser una cadena. |
Return value type
Devuelve un valor interval.
Examples
Convertir 1,340 milisegundos al formato 0 00:00:01.340.
-
Instrucción de consulta
* | SELECT parse_duration('1340ms') La consulta devuelve
0 00:00:01.340, que representa 1,340 milisegundos en el formato estándar de intervalo de tiempo.
Función to_days
Convierte un intervalo de tiempo a días.
Syntax
to_days(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El intervalo de tiempo. Este parámetro debe ser un varchar. |
Return value type
Un valor double.
Examples
Convertir 192848s a días.
-
Instrucción de consulta
*| SELECT to_days('192848s') La columna
_col0devuelve2, lo que indica que 192848 segundos equivalen a 2 días.
Función to_hours
Convierte un intervalo de tiempo a horas.
Syntax
to_hours(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El intervalo de tiempo a convertir. Debe ser un varchar. |
Return value type
Devuelve un double.
Examples
Convertir un intervalo de tiempo de 1.2 días a horas.
-
Instrucción de consulta y análisis
* | SELECT to_hours('1.2d') El valor en los resultados de la consulta y análisis es
28.8.
Función to_microseconds
Convierte un intervalo de tiempo a microsegundos.
Syntax
to_microseconds(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El intervalo de tiempo, que debe ser de tipo varchar. |
Return value type
Devuelve un double.
Examples
Convertir 3600 nanosegundos a microsegundos.
-
Instrucción de consulta y análisis
* | SELECT to_microseconds('3600ns') El resultado de la consulta y análisis es
3.6en la columna_col0.
to_milliseconds
Convierte un intervalo de tiempo a milisegundos.
Syntax
to_milliseconds(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El intervalo de tiempo. Este parámetro debe ser de tipo varchar. |
Return value type
Devuelve un double.
Examples
Convertir 1.2 segundos a milisegundos.
-
Instrucción de consulta y análisis
* | SELECT to_milliseconds('1.2s') Resultados de la consulta y análisis: La columna
_col0devuelve el valor1200, lo que significa que 1.2 segundos equivalen a 1,200 milisegundos.
Función to_minutes
Convierte un intervalo de tiempo a minutos.
Syntax
to_minutes(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El intervalo de tiempo. Este parámetro debe ser de tipo varchar. |
Return value type
El valor devuelto es de tipo double.
Examples
Convierta 1.2 horas a minutos.
-
Instrucción de consulta y análisis
* | SELECT to_minutes('1.2h') La instrucción devuelve
72.
to_most_succinct_time_unit
Convierte automáticamente un intervalo de tiempo a su unidad más concisa.
Syntax
to_most_succinct_time_unit(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El intervalo de tiempo. Este parámetro debe ser de tipo varchar. |
Return value type
El valor devuelto es de tipo varchar.
Examples
Convierta 1,340 ms a un intervalo de tiempo en segundos.
-
Instrucción de consulta y análisis:
* | SELECT to_most_succinct_time_unit('1340ms') Resultados de la consulta y el análisis:
1.34s
Función to_nanoseconds
Convierte un intervalo de tiempo a nanosegundos.
Syntax
to_nanoseconds(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El intervalo de tiempo que se va a convertir. El valor debe ser de tipo varchar. |
Return value type
Devuelve un valor de tipo double.
Examples
Convierta 125 milisegundos a su valor equivalente en nanosegundos.
-
Instrucción de consulta
* | SELECT to_nanoseconds('125ms') La consulta devuelve
125000000.
Función to_seconds
Convierte un intervalo de tiempo a segundos.
Syntax
to_seconds(x)
Parameters
|
Parámetro |
Descripción |
|
x |
El intervalo de tiempo que se va a convertir. Este parámetro es de tipo varchar. |
Return value type
El valor devuelto es de tipo double.
Examples
Convierta 1340 milisegundos a segundos.
-
Instrucción de consulta
* | SELECT to_seconds('1340ms') El resultado de la consulta y el análisis es
1.34.