Ejercicio: Combinación de los resultados de tabla mediante el operador de búsqueda

Completado

En el ejercicio anterior, ha usado el operador join para buscar el total de ventas por producto. En este ejercicio, usará el operador lookup para buscar el total de ventas por país o región.

Use el operador lookup.

El equipo de ventas quiere saber las ventas totales de la empresa por país o región. Puede usar un operador join para obtener la información del cliente y del producto. Pero este tipo de consulta funciona mejor cuando use el operador lookup para obtener esta información.

Recuerde que el operador lookup enriquece una tabla de hechos con datos de una tabla de dimensión. Es algo parecido a leer un libro (tabla de hechos) y buscar palabras desconocidas en un diccionario (tabla de dimensión).

Para esta consulta, empezará con la tabla SalesFact y usará el operador lookup a fin de obtener los datos de Customer y agregarlos a la tabla resultante.

Enel procedimiento siguiente, compilará la consulta en fases para comprender mejor el resultado del uso del operador lookup.

  1. Ejecute la consulta siguiente para obtener 10 filas arbitrarias coincidentes de la tabla SalesFact y la tabla Customers.

    Ejecución de la consulta

    SalesFact
    | lookup Customers on CustomerKey
    | take 10
    

    Eche un vistazo la lista resultante. Observe que la tabla resultante contiene columnas de la tabla SalesFact seguidas de columnas coincidentes de la tabla Customers.

  2. Ejecute la consulta siguiente para obtener el total de ventas por país o región.

    Ejecución de la consulta

    SalesFact
    | lookup Customers on CustomerKey
    | summarize TotalSales = count() by RegionCountryName
    | order by TotalSales desc
    

    Los resultados deberían ser similares a los que aparecen en la imagen siguiente:

    Captura de pantalla del operador de búsqueda, con la consulta y los resultados de ventas totales por país o región.

  3. Eche un vistazo la lista resultante. Observe que las ventas principales están en Estados Unidos. Intente modificar la consulta para mostrar el total de ventas en Estados Unidos por estado.

En la unidad anterior, usó un rightouter join para obtener el total de ventas por categoría de producto. La consulta tardó 0.834 segundos en ejecutarse. Ahora escriba una consulta para obtener el mismo resultado con el operador lookup y luego comparando el tiempo de ejecución.

  1. Ejecute la consulta siguiente.

    Ejecución de la consulta

    SalesFact
    | lookup Products on ProductKey
    | summarize TotalSales = count() by ProductCategoryName
    | order by TotalSales desc
    

    Los resultados deberían ser similares a los que aparecen en la imagen siguiente:

    Captura de pantalla del operador de búsqueda con la consulta y los resultados de ventas totales por producto.

    Observe que obtiene los mismos resultados, pero el tiempo de ejecución es de 0,398 segundos. El tiempo de ejecución más rápido se debe a que el operador lookup está optimizado para este tipo de consulta.