자습서: 저장 프로시저를 사용하여 데이터 변환

적용 대상: Microsoft Fabric의 SQL 엔드포인트 및 웨어하우스

데이터를 변환하는 새 저장 프로시저를 만들고 저장하는 방법을 알아봅니다.

중요

Microsoft Fabric은 현재 미리 보기로 제공됩니다. 이 정보는 릴리스되기 전에 상당히 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보와 관련하여 명시적이거나 묵시적인 어떠한 보증도 하지 않습니다.

데이터 변환

  1. 리본의 탭에서 새 SQL 쿼리를 선택합니다.

    새 SQL 쿼리를 선택할 위치를 보여 주는 홈 탭의 리본 메뉴 스크린샷

  2. 쿼리 편집기에서 다음 코드를 붙여넣어 저장 프로시저 dbo.populate_aggregate_sale_by_city를 만듭니다. 이 저장 프로시저는 이후 단계에서 테이블을 만들고 로드 dbo.aggregate_sale_by_date_city 합니다.

    --Drop the stored procedure if it already exists.
    DROP PROCEDURE IF EXISTS [dbo].[populate_aggregate_sale_by_city]
    GO
    
    --Create the populate_aggregate_sale_by_city stored procedure.
    CREATE PROCEDURE [dbo].[populate_aggregate_sale_by_city]
    AS
    BEGIN
        --If the aggregate table already exists, drop it. Then create the table.
        DROP TABLE IF EXISTS [dbo].[aggregate_sale_by_date_city];
        CREATE TABLE [dbo].[aggregate_sale_by_date_city]
            (
                [Date] [DATETIME2](6),
                [City] [VARCHAR](8000),
                [StateProvince] [VARCHAR](8000),
                [SalesTerritory] [VARCHAR](8000),
                [SumOfTotalExcludingTax] [DECIMAL](38,2),
                [SumOfTaxAmount] [DECIMAL](38,6),
                [SumOfTotalIncludingTax] [DECIMAL](38,6),
                [SumOfProfit] [DECIMAL](38,2)
            );
    
        --Reload the aggregated dataset to the table.
        INSERT INTO [dbo].[aggregate_sale_by_date_city]
        SELECT
            FS.[InvoiceDateKey] AS [Date], 
            DC.[City], 
            DC.[StateProvince], 
            DC.[SalesTerritory], 
            SUM(FS.[TotalExcludingTax]) AS [SumOfTotalExcludingTax], 
            SUM(FS.[TaxAmount]) AS [SumOfTaxAmount], 
            SUM(FS.[TotalIncludingTax]) AS [SumOfTotalIncludingTax], 
            SUM(FS.[Profit]) AS [SumOfProfit]
        FROM [dbo].[fact_sale] AS FS
        INNER JOIN [dbo].[dimension_city] AS DC
            ON FS.[CityKey] = DC.[CityKey]
        GROUP BY
            FS.[InvoiceDateKey],
            DC.[City], 
            DC.[StateProvince], 
            DC.[SalesTerritory]
        ORDER BY 
            FS.[InvoiceDateKey], 
            DC.[StateProvince], 
            DC.[City];
    END
    
  3. 나중에 참조를 위해 이 쿼리를 저장하려면 편집기 바로 위에 있는 쿼리 탭을 마우스 오른쪽 단추로 클릭하고 이름 바꾸기를 선택합니다.

    쿼리를 마우스 오른쪽 단추로 클릭하고 이름 바꾸기를 선택할 위치를 보여 주는 편집기 화면 위의 탭 스크린샷

  4. 집계 프로시저 만들기를 입력하여 쿼리 이름을 변경합니다.

  5. 키보드에서 Enter 키를 누르거나 탭 외부의 아무 곳이나 선택하여 변경 사항을 저장합니다.

  6. 실행을 선택하여 쿼리를 실행합니다.

  7. 리본에서 새로 고침 단추를 선택합니다.

    새로 고침 단추를 선택할 위치를 보여 주는 홈 리본의 스크린샷.

  8. 개체 탐색기에서 스키마 아래의 StoredProcedures 노드를 확장하여 새로 만든 저장 프로시저를 dbo 볼 수 있는지 확인합니다.

    새로 만든 프로시저를 찾기 위해 StoredProcedures 노드를 확장할 위치를 보여 주는 Explorer 창의 스크린샷

  9. 리본의 탭에서 새 SQL 쿼리를 선택합니다.

  10. 쿼리 편집기에서 다음 코드를 붙여넣습니다. 이 T-SQL은 dbo.populate_aggregate_sale_by_city 를 실행하여 테이블을 만듭니다 dbo.aggregate_sale_by_date_city .

    --Execute the stored procedure to create the aggregate table.
    EXEC [dbo].[populate_aggregate_sale_by_city];
    
  11. 나중에 참조를 위해 이 쿼리를 저장하려면 편집기 바로 위에 있는 쿼리 탭을 마우스 오른쪽 단추로 클릭하고 이름 바꾸기를 선택합니다.

  12. 쿼리 이름을 변경하려면 집계 프로시저 만들기 실행을 입력합니다.

  13. 키보드에서 Enter 키를 누르거나 탭 외부의 아무 곳이나 선택하여 변경 사항을 저장합니다.

  14. 실행을 선택하여 쿼리를 실행합니다.

  15. 리본에서 새로 고침 단추를 선택합니다. 쿼리를 실행하는 데 2~3분이 걸립니다.

  16. 개체 탐색기에서 데이터 미리 보기를 로드하여 Explorer 테이블에서 를 선택하여 로드된 데이터의 유효성을 aggregate_sale_by_city 검사합니다.

    선택한 테이블에 로드된 데이터를 나열하는 데이터 미리 보기 화면 옆에 있는 Explorer 창의 스크린샷

다음 단계