Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
A combinação de T-SQL e Python em fluxos de trabalho de dados modernos oferece uma abordagem poderosa e flexível que combina os pontos fortes de ambas as linguagens. O SQL continua sendo a maneira mais eficiente e legível de consultar, filtrar e unir dados estruturados, enquanto o Python se destaca na transformação de dados, análise estatística, machine learning e visualização. Combinando T-SQL e Python, os engenheiros de dados podem usar o melhor dos dois mundos, permitindo que eles criem pipelines robustos que sejam eficientes, mantenedíveis e capazes de lidar com tarefas complexas de processamento de dados.
Nos notebooks python do Microsoft Fabric, introduzimos um novo recurso chamado comando mágico T-SQL. Esse recurso permite que você execute o código T-SQL diretamente em notebooks Python com realce de sintaxe completo e preenchimento de código. Isso significa que você pode escrever código T-SQL em um notebook Python e ele será executado como se fosse uma célula T-SQL. Esse recurso é útil para engenheiros de dados que desejam usar o poder do T-SQL enquanto ainda usam a flexibilidade de notebooks Python.
Neste artigo, exploramos o comando mágico T-SQL nos notebooks do Microsoft Fabric. Abordamos como habilitar esse comando, especificar qual warehouse usar e como associar os resultados de consultas T-SQL a variáveis do Python.
Esse recurso está disponível para notebooks Python do Fabric. Você precisa definir o idioma como Python no notebook e o tipo de célula como T-SQL.
Important
Esse recurso está na versão prévia.
Usando o comando magic T-SQL para consultar o data warehouse do Fabric
Para habilitar o comando mágico T-SQL no bloco de anotações do Fabric, você precisa definir o %%tsql comando mágico no início da célula. Esse comando indica que o código nessa célula deve ser tratado como código T-SQL.
Neste exemplo, estamos usando o comando mágico T-SQL para consultar um Fabric Data Warehouse. O comando usa os seguintes parâmetros:
- O
-artifactparâmetro especifica o nome do data warehouse a ser usado. O código T-SQL na célula é executado no data warehouse especificado no Fabric. - O parâmetro
-typeespecifica o tipo do item Fabric. Para o Fabric Data Warehouse, useWarehouse. - O
-bindparâmetro especifica o nome da variável à qual associar os resultados da consulta T-SQL. No exemplo a seguir, os resultados da consulta são armazenados em uma variável python chamadadf1. Se você precisar aplicar qualquer transformação à variável df1, poderá fazer isso usando o código Python na próxima célula. O-bindparâmetro é opcional, mas é recomendável associar os resultados da consulta T-SQL a uma variável do Python. Esse parâmetro permite manipular e analisar facilmente os resultados usando o código Python. - O
-workspaceparâmetro é opcional e será usado se o warehouse estiver localizado em um workspace diferente. Sem esse parâmetro, o notebook usa o workspace atual.
%%tsql -artifact dw1 -type Warehouse -bind df1
SELECT TOP (10) [GeographyID],
[ZipCodeBKey],
[County],
[City],
[State],
[Country],
[ZipCode]
FROM [dw1].[dbo].[Geography]
Se os parâmetros -artifact e -type forem ignorados, o notebook usará o item de armazenamento padrão no notebook atual.
Usando o comando magic T-SQL para consultar o banco de dados SQL
Você também pode usar o comando magic T-SQL para consultar um banco de dados SQL no Fabric. A sintaxe é semelhante à consulta de um data warehouse, mas o -type parâmetro deve ser definido como SQLDatabase. O -bind parâmetro especifica o nome da variável à qual associar os resultados da consulta T-SQL.
No exemplo a seguir, o resultado da consulta é armazenado em uma variável python chamada df2.
%%tsql -artifact sqldb1 -type SQLDatabase -bind df2
SELECT TOP (10) [AddressID]
,[AddressLine1]
,[AddressLine2]
,[City]
,[StateProvince]
,[CountryRegion]
,[PostalCode]
,[rowguid]
,[ModifiedDate]
FROM [SalesLT].[Address];
Usando o comando mágico T-SQL para consultar o endpoint de análise SQL do Lakehouse
Você também pode usar o comando mágico T-SQL para consultar um endpoint de análise SQL. A sintaxe é semelhante à consulta de um data warehouse, mas o -type parâmetro deve ser definido como Lakehouse. O -bind parâmetro especifica o nome da variável à qual associar os resultados da consulta T-SQL.
No exemplo a seguir, o resultado da consulta é armazenado em uma variável python chamada df3.
%%tsql -artifact lakehouse1 -type Lakehouse -bind df3
SELECT TOP (10) [ProductID],
[Name],
[ProductNumber],
[Color],
[StandardCost],
[ListPrice]
FROM [lakehouse1].[dbo].[Product];
Usando o comando mágico T-SQL como mágica de linha
Em vez de rodar o T-SQL em uma célula de código completa com %%tsql, você pode executá-lo em uma única linha com %tsql como comando mágico de linha. No entanto, primeiro você deve estabelecer uma conexão de sessão.
Important
Antes de usar %tsql a mágica de linha, você deve executar um %%tsql comando de célula mágica com o -session parâmetro para inicializar o contexto mágico do SQL. A execução %tsql sem essa configuração resultará em uma SQLMagicContextInitializationException.
Pré-requisitos para mágica de linha
Inicializar a sessão: em uma célula que usa o
%%tsqlcomando magic, inclua o parâmetro-sessionpara estabelecer o contexto de conexão. Por exemplo:%%tsql -artifact ContosoDWH -type Warehouse -session SELECT TOP(10) * FROM [ContosoDWH].[dbo].[Geography];Use a mágica de linha: após inicializar a sessão, você poderá usar
%tsqlnas células seguintes. A mágica de linha usará a conexão estabelecida na etapa 1 sem exigir que você especifique-artifacte-typenovamente. Por exemplo:df = %tsql SELECT TOP(10) * FROM [ContosoDWH].[dbo].[Geography];
Referenciar variáveis do Python no T-SQL
Você também pode referenciar variáveis do Python no código T-SQL. Para fazer isso, use o {} símbolo seguido pelo nome da variável Python. Por exemplo, se você tiver uma variável python chamada count, poderá referenciá-la da seguinte maneira no código T-SQL:
count = 10
df = %tsql SELECT TOP({count}) * FROM [dw1].[dbo].[Geography];
Para ver a sintaxe completa, use o %tsql? comando. Esse comando exibe as informações de ajuda para o comando magic T-SQL, incluindo os parâmetros disponíveis e suas descrições.
Note
Você pode executar os comandos DML e DDL completos no data warehouse ou no banco de dados SQL, mas somente consultas em modo somente leitura no ponto de extremidade SQL do Lakehouse.
Conteúdo relacionado
Para obter mais informações sobre os notebooks do Fabric, confira os artigos a seguir.
- Questions? Experimente perguntar à Comunidade do Fabric.
- Suggestions? Contribua com ideias para melhorar o Fabric.