Blog Navicat

Crear campos personalizados en Navicat BI: Campos calculados Sep 6, 2024 by Robert Gravelle

Es una práctica muy establecida en el diseño y desarrollo de bases de datos evitar almacenar datos que se puedan calcular o reconstruir a partir de otros campos. Como resultado, es posible que falten algunos datos al crear gráficos en Navicat BI. Pero eso no es un problema, ya que Navicat BI proporciona campos calculados específicamente para ese propósito. En el blog de hoy, usaremos campos calculados para crear un gráfico que muestre los tiempos de alquiler promedio (es decir, cuánto tiempo conserva un cliente una película antes de devolverla) por cliente. Como en la mayoría de los artículos de esta serie, los datos se seleccionarán de la base de datos de muestra gratuita "dvdrental".

Obtener la información de alquiler del cliente

Como se mencionó en blogs anteriores de esta serie, debemos crear la fuente de datos antes de diseñar el gráfico, ya que necesitaremos especificar la fuente de datos que utiliza el gráfico. Las fuentes de datos hacen referencia a tablas en sus conexiones o datos en archivos/fuentes ODBC, y pueden seleccionar datos de tablas en diferentes tipos de servidores. Después de crear una nueva fuente de datos, podemos hacer clic en "Nueva consulta de fuente de datos" para abrir el Diseñador de consultas. Allí, podemos escribir nuestra sentencia SQL directamente en el editor, utilizar el generador de consultas visual o importar una consulta desde Navicat. Aquí está la sentencia SELECT con la que se obtiene la información del cliente, junto con el importe del alquiler, la fecha en la que se alquiló la película y la fecha en la que se devolvió:

customer_rental_info_data_source (111K)

Una vez que guardemos la consulta y actualicemos los datos, deberíamos ver todos los campos de la consulta y el conjunto de resultados:

customer_rental_info_data_source_with_data (253K)

Ahora podemos usar los campos rental_date y return_date para calcular la duración del alquiler. Para ello, haga clic con el botón derecho en return_date en la lista de campos (Control-clic en macOS) y seleccione Nuevo campo calculado... en el menú contextual.

new_calculated_field_menu_command (44K)

En el cuadro de diálogo Nuevo campo calculado, encontrará todo tipo de funciones útiles, incluidas funciones de agregación, funciones de fecha y hora, funciones lógicas y otras. Usaremos la función DATEDIFF() para calcular la cantidad de días entre los campos rental_date y return_date. La función acepta una unidad de tiempo, así como una fecha de inicio y una fecha de finalización. Podemos leer la descripción debajo de la lista de funciones para obtener más información. Pasaremos una "D" (día) para la unidad, junto con los dos campos de fecha, de la siguiente manera:

new_calculated_field_dialog (116K)

Hay una vista previa en la parte inferior del cuadro de diálogo que nos indica que estamos obteniendo el resultado que queremos.

Después de hacer clic en el botón Aceptar, deberíamos ver nuestro nuevo campo en la lista de campos y los resultados:

customer_rental_info_data_source_with_calculated_field (156K)

Crear gráfico de duración media del alquiler por cliente

Dado que cada ID de cliente es un punto de datos independiente, un gráfico de dispersión puede funcionar bien. Un gráfico de dispersión traza datos con puntos de datos individuales colocados a lo largo de los ejes X e Y. Usaremos customer_id para el eje X y rental_duration (promedio) para el eje Y. Simplemente arrastre los campos a los campos de eje X y eje Y en el diseñador de gráficos, aplique el agregado Promedio a rental_duration y, ¡listo, tendrá un gráfico instantáneo!

avg_rental_duration_per_customer_chart_in_design_mode (116K)

Aquí está el gráfico completo en modo “Present”

avg_rental_duration_per_customer_chart_in_present_mode (104K)

Bono: Visualización de la cantidad de alquileres por cliente

Si bien los promedios son útiles, también pueden ser útiles para mostrar cuántas veces cada cliente alquiló una o más películas. Podemos utilizar una función Agregado para este propósito. Contaremos la cantidad de entradas de monto en el conjunto de resultados y las agruparemos por customer_id. Aquí está el cuadro de diálogo Nuevo campo calculado con la llamada a la función AGGCOUNT():

aggcount_function (102K)

En el Diseñador de gráficos, arrastraremos nuestro nuevo campo number_of_rentals a la ranura Color. Si añadimos un orden ascendente, ordenaremos los elementos de la leyenda desde el número de alquileres más bajo hasta el más alto:

avg_rental_duration_per_customer_chart_in_design_mode_with_num_or_rentals (118K)

Podemos ver los detalles de un punto de datos individual al pasar el cursor sobre él. Aparecerá una información sobre herramientas que muestra la cantidad de alquileres, el ID del cliente y la duración promedio del alquiler en días

data_point_details (17K)

Conclusión

En este blog, se explicó cómo usar los campos calculados en las fuentes de datos y los gráficos de Navicat BI. Estas fueron solo algunas de las nuevas funciones incluidas en la última versión de Business Intelligence (BI). Esto también nos lleva al final de esta serie sobre los campos personalizados. Si desea probar Navicat BI, puede descargar la versión independiente para obtener una prueba GRATUITA completamente funcional durante 14 días FREE trial. Está disponible para los sistemas operativos Windows, macOS y Linux.

Compartir
Archivos del Blog