使用 SQL 分析终结点查询数据

适用于:✅Microsoft Fabric SQL 数据库

在 Fabric SQL 数据库中创建的数据会以较短的时间间隔并以增量格式自动镜像到 Microsoft Fabric OneLake 中。 此镜像数据对于许多应用程序都很有用,包括可用作报告数据源,以减轻操作数据库的计算压力。

先决条件

  • 完成本教程前面的所有步骤。

访问 Fabric SQL 数据库的 SQL 分析终结点

可以通过在工作区视图中选择 SQL 分析终结点来访问此镜像数据。

工作区视图中 SQL 数据库的 SQL 分析终结点的屏幕截图。

还可以在数据库视图中访问 SQL 分析终结点。

屏幕截图显示了用于从 SQL 数据库切换到 SQL 分析终结点视图的下拉列表。

打开 SQL 数据库的 SQL 分析终结点时,系统会转到与 Fabric SQL 数据库视图类似的视图。

屏幕截图显示了通过 SQL 数据库的 SQL 分析终结点在资源管理器中提供的相同数据。

使用 SQL 分析终结点查询数据

可以使用与 Fabric 仓库兼容的标准 Transact-SQL 语句在 SQL 分析终结点中查询任何镜像数据。 无法向此数据添加数据承载对象,但可以将视图添加到数据中以进行报告和分析。 使用只读 SQL 分析终结点可以减轻操作数据库的计算压力,并缩放系统以进行报告和分析。

在此步骤中,创建镜像数据视图,然后创建报表以显示结果。

  1. 确保在 SQL 分析终结点中操作,使用显示带有字母 SQL 的纸张的图标栏打开一个新的查询窗口,并粘贴以下 Transact-SQL 代码,然后选择“运行”以执行它。 此 T-SQL 查询会创建三个新的 SQL 视图,名称分别为 SupplyChain.vProductsBySupplierSupplyChain.vSalesByDateSupplyChain.vTotalProductsByVendorLocation

    CREATE VIEW SupplyChain.vProductsBySupplier AS
    -- View for total products by each supplier
    SELECT sod.ProductID
    , sup.CompanyName
    , SUM(sod.OrderQty) AS TotalOrderQty
    FROM SalesLT.SalesOrderHeader AS soh
    INNER JOIN SalesLT.SalesOrderDetail AS sod 
        ON soh.SalesOrderID = sod.SalesOrderID
        INNER JOIN SupplyChain.Warehouse AS sc 
            ON sod.ProductID = sc.ProductID
            INNER JOIN dbo.Suppliers AS sup 
                ON sc.SupplierID = sup.SupplierID
    GROUP BY sup.CompanyName, sod.ProductID;
    GO
    CREATE VIEW SupplyChain.vSalesByDate AS
    -- Product Sales by date and month
    SELECT YEAR(OrderDate) AS SalesYear
    , MONTH(OrderDate) AS SalesMonth
    , ProductID
    , SUM(OrderQty) AS TotalQuantity
    FROM SalesLT.SalesOrderDetail AS SOD
    INNER JOIN SalesLT.SalesOrderHeader AS SOH 
        ON SOD.SalesOrderID = SOH.SalesOrderID
    GROUP BY YEAR(OrderDate), MONTH(OrderDate), ProductID;
    GO
    CREATE VIEW SupplyChain.vTotalProductsByVendorLocation AS
    -- View for total products by each supplier by location
    SELECT wh.SupplierLocationID AS 'Location'
    , vpbs.CompanyName AS 'Supplier'
    , SUM(vpbs.TotalOrderQty) AS 'TotalQuantityPurchased'
    FROM SupplyChain.vProductsBySupplier AS vpbs
    INNER JOIN SupplyChain.Warehouse AS wh
        ON vpbs.ProductID = wh.ProductID
    GROUP BY wh.SupplierLocationID, vpbs.CompanyName;
    GO   
    

现在可以在分析和报告操作中使用这些视图。 本教程后面部分将使用这些视图创建报表。

若要了解有关 SQL 数据库自动镜像到 OneLake 的详细信息,请参阅 Microsoft Fabric SQL 数据库镜像(预览版)

下一步