Conozca la sintaxis y el uso de las funciones de color en Log Service.
Log Service admite las siguientes funciones de color.
En una instrucción analítica de Log Service, debe encerrar las cadenas entre comillas simples ('). Los caracteres que no están encerrados entre comillas simples o que están encerrados entre comillas dobles ("") se tratan como un nombre de campo o de columna. Por ejemplo, 'status' representa la cadena status, mientras que status o "status" representa el campo de registro denominado status.
-
La consola de Log Service no muestra correctamente los resultados de las funciones de color. Muestre los resultados en una terminal en su lugar.
Visualización en consola: La consola muestra los códigos de escape ANSI como caracteres sin procesar, como
\e[38;5;1m, en lugar de representar los colores.-
Visualización en terminal
mysql> select pv,bar(pv/10.0,10 , color(0,50,100, rgb(255,0,0), rgb(0,255,0)), rgb(0,255,0)) from(select * from (VALUES (0),(1), (2), (3), (4), (5), (6), (7),(8),(9)) AS X(pv)); +------+----------------------------------------------------------------------+ | pv | _col1 | +------+----------------------------------------------------------------------+ | 0 | | | 1 | █ | | 2 | ██ | | 3 | ███ | | 4 | ████ | | 5 | █████ | | 6 | ██████ | | 7 | ███████ | | 8 | ████████ | | 9 | █████████ | +------+----------------------------------------------------------------------+ 10 rows in set (0.21 sec)
|
Función |
Sintaxis |
Descripción |
Compatibilidad con SQL |
Compatibilidad con SPL |
|
bar(x, width) |
Devuelve un segmento de gráfico de barras basado en x con un width especificado y un degradado predeterminado de rojo a verde. |
√ |
× |
|
|
bar(x, width, low_color, high_color) |
Devuelve un segmento de gráfico de barras basado en x con un width especificado y colores de inicio y fin personalizados. |
√ |
× |
|
|
color(string) |
Convierte una cadena de color al tipo |
√ |
× |
|
|
color(x, low, high, low_color, high_color) |
Pondera low_color y high_color según la proporción de x entre low y high, y devuelve un color intermedio entre low_color y high_color. |
√ |
× |
|
|
color(y, low_color, high_color) |
Utiliza y para especificar las proporciones de low_color y high_color, y devuelve un color intermedio entre low_color y high_color. |
√ |
× |
|
|
render(boolean expression) |
Devuelve una marca de verificación verde (✓) si la expresión booleana es verdadera, o una cruz roja (✗) en caso contrario. |
√ |
× |
|
|
render(x, color) |
Representa los resultados con un color personalizado. |
√ |
× |
|
|
rgb(red, green, blue) |
Devuelve un valor de color basado en valores RGB. |
√ |
× |
Función bar
La función bar dibuja un gráfico de barras ANSI.
Syntax
-
Devuelve un segmento de gráfico de barras basado en x con un width especificado y un degradado predeterminado de rojo a verde.
bar(x, width) -
Devuelve un segmento de gráfico de barras basado en x con un width especificado y colores de inicio y fin personalizados.
bar(x, width, low_color, high_color)
Parameters
|
Parámetro |
Descripción |
|
x |
La proporción de la barra a representar. El valor debe ser de tipo DOUBLE en el rango [0, 1]. |
|
width |
El ancho total del gráfico de barras ANSI. |
|
low_color |
El valor RGB del color inicial en el degradado de colores. |
|
high_color |
El valor RGB del color final en el degradado de colores. |
Return value type
varchar
Examples
-
Ejemplo 1: Calcular la proporción horaria de PV y mostrarla como un gráfico de barras ANSI.
-
Instrucción analítica
* | SELECT Method, bar(pv/m,100) FROM( SELECT *, max(pv) over() AS m FROM( SELECT Method, count(1) AS pv FROM internal-operation_log WHERE __date__ > '2021-09-10 00:00:00' AND __date__ < '2021-09-10 01:00:00' GROUP BY Method ) ) Resultados de consulta y análisis (consola): La columna _col1 muestra el gráfico de barras ANSI generado por la función
bar.-
Resultados de consulta y análisis (terminal)
+-----------------+----------------------------------------------+ | GetProjectLogs | ████████ | | GetLogStoreLogs | ████████████████████████████████████████████ | +-----------------+----------------------------------------------+ 2 rows in set (8.99 sec)
-
-
Ejemplo 2: Dibujar un gráfico de barras ANSI con un ancho de 50 mediante un degradado de blanco a rojo.
-
Instrucción analítica
* | SELECT bar(1,50,rgb(255,255,255),rgb(255,0,0)) Resultados de consulta y análisis (consola): La columna
_col0contiene códigos de escape ANSI que se representan como una barra con degradado de blanco a rojo.-
Resultados de consulta y análisis (terminal)
+------+------+ | _col0 | _col0 | +------+------+ | [white to red gradient bar] | | +------+------+ 1 row in set (0.20 sec)
-
Función color
La función color devuelve el color correspondiente a un valor especificado.
Syntax
-
Convierte una cadena de color al tipo
color.color(string) -
La proporción de x entre low y high determina los pesos para low_color y high_color, y la función devuelve entonces un color intermedio entre low_color y high_color.
color(x, low, high, low_color, high_color) -
Utiliza y para especificar la proporción de low_color y high_color, y devuelve un color intermedio entre low_color y high_color.
color(y, low_color, high_color)
Parameters
|
Parámetro |
Descripción |
|
x |
Un valor de tipo DOUBLE. |
|
y |
Un valor de tipo DOUBLE en el rango [0, 1]. |
|
low |
El valor mínimo del rango, de tipo DOUBLE. |
|
high |
El valor máximo del rango, de tipo DOUBLE. |
|
low_color |
El valor RGB del color inicial en el degradado de colores. |
|
high_color |
El valor RGB del color final en el degradado de colores. |
|
string |
Una cadena de nombre de color (por ejemplo, |
Return value type
color
Examples
-
Ejemplo 1: Convertir una cadena de color al tipo
color.-
Instrucción analítica
* | SELECT color('#000') Resultados de consulta y análisis (consola): El resultado es
#000000.-
Resultados de consulta y análisis (terminal)
mysql> SELECT color('#000'); +---------+ | _col0 | +---------+ | #000000 | +---------+ 1 row in set (0.21 sec)
-
-
Ejemplo 2: Generar un gráfico de barras ANSI coloreado a partir del residuo del campo request_length.
-
Instrucción analítica
*|SELECT x,bar(10,10, color(x, 0,10, rgb(255,0,0), rgb(0,255,0)), rgb(0,255,0)) FROM(SELECT *FROM (SELECT request_length%10 x FROM log)) Resultados de consulta y análisis (consola): La columna
xmuestra el valor numérico, y la columna_col1muestra un gráfico de barras con colores que transicionan de rojo a verde segúnx.-
Resultados de consulta y análisis (terminal)
| x | _col1 | |------|--------------------------------| | 1 | [colored gradient bar] | | 6 | [colored gradient bar] | | 4 | [colored gradient bar] | | 7 | [colored gradient bar] | | 7 | [colored gradient bar] | | 0 | [colored gradient bar] | 6 rows in set (0.21 sec)
-
-
Ejemplo 3: Generar un gráfico de barras ANSI con un color inicial proporcional.
-
Instrucción analítica
*|SELECT bar(10,10, color(0.3, rgb(255,255,255), rgb(255,0,0)), rgb(0,255,0)) Resultados de consulta y análisis (consola): El resultado contiene códigos de escape ANSI que muestran una barra de color degradado.
-
Resultados de consulta y análisis (terminal)
mysql> select bar(10,10 , color(0.3, rgb(255,255,255), rgb(255,0,0)), rgb(0,255,0)); +----------------------------------------------------------------------+ | _col0 | +----------------------------------------------------------------------+ | ██████████ | +----------------------------------------------------------------------+ 1 row in set (0.21 sec)
-
Función render
La función render formatea la salida con colores o símbolos.
Syntax
-
Devuelve una marca de verificación verde (✓) si la expresión booleana es verdadera, o una cruz roja (✗) en caso contrario.
render(boolean expression) -
Representa los resultados con un color personalizado.
render(x, color)
Parameters
|
Parámetro |
Descripción |
|
boolean expression |
La expresión booleana a evaluar. |
|
x |
El valor INTEGER a representar. |
|
color |
El color a utilizar para la representación. Este parámetro es de tipo |
Return value type
varchar
Examples
-
Ejemplo 1: Comprobar si el recuento de PV es menor que 1,000. Devuelve ✓ si es verdadero.
-
Instrucción analítica
* | SELECT render(count(*)<1000) Resultados de consulta y análisis (consola): La consola muestra los códigos de escape ANSI como caracteres sin procesar, como
\e[38;5;1m, en lugar de representar los colores.-
Resultados de consulta y análisis (terminal)
mysql> select render(count(*)<1000); +------------------+ | _col0 | +------------------+ | ✓ | +------------------+ 1 row in set (0.22 sec)
-
-
Ejemplo 2: Contar el total de registros y representar el resultado en verde.
-
Instrucción analítica
* | SELECT render(count(*),rgb(48,169,16)) -
Resultados de consulta y análisis (consola)
_col0 \e[38;5;70m1\e[0m -
Resultados de consulta y análisis (terminal)
mysql> select render(count(*),rgb(48,169,16)); +----------------+ | _col0 | +----------------+ | 1 | +----------------+ 1 row in set (0.21 sec)
-
Función rgb
La función rgb crea un color a partir de valores RGB especificados.
Syntax
rgb(red, green, blue)
Parameters
|
Parámetro |
Descripción |
|
red |
El componente rojo del color, un entero de 0 a 255. |
|
green |
El componente verde del color, un entero de 0 a 255. |
|
blue |
El componente azul del color, un entero de 0 a 255. |
Return value type
color
Examples
Devuelve un color basado en valores RGB.
-
Instrucción analítica
*|SELECT rgb(255,0,0) Resultados de consulta y análisis (consola): La columna
_col0devuelve#ff0000.-
Resultados de consulta y análisis (terminal)
select rgb(255,0,0); +---------+ | _col0 | +---------+ | #ff0000 | +---------+ 1 row in set (0.21 sec)