Apresetnamos como executar scripts em Python na consulta SQL utilizando o recurso SQL Server Machine Learning Services integrado na instância SQL Server.
O SQL Server Machine Learning Services permite integrar linguagens de programação estatística e de machine learning, como R e Python, diretamente em consultas T-SQL. Vamos explorar cada tópico:
1. Tipos de dados necessários para os parâmetros (NVARCHAR):
Exemplo:
DECLARE @parametro NVARCHAR(100) = 'Exemplo';
2. Importar biblioteca Python (PACKAGE):
Exemplo:
EXEC sp_execute_external_script @language = N'Python', @script = N' import pandas as pd # Seu código Python aqui ';
3. Converter variáveis em Data Frame (BRACKETS, PANDAS):
Exemplo:
EXEC sp_execute_external_script @language = N'Python', @script = N' import pandas as pd # Criar DataFrame a partir de variáveis df = pd.DataFrame({'Coluna1': [1, 2, 3], 'Coluna2': ['A', 'B', 'C']}) ';
4. Exibir resultados em formato de tabela (DATAFRAME, WITH RESULT SETS):
Exemplo:
EXEC sp_execute_external_script @language = N'Python', @script = N' import pandas as pd # Seu código Python aqui df = pd.DataFrame({'Coluna1': [1, 2, 3], 'Coluna2': ['A', 'B', 'C']}) OutputDataSet = df ' WITH RESULT SETS ((Coluna1 int, Coluna2 varchar(10)));
5. Utilizar resultado de consulta SQL como parâmetro de entrada (@INPUT_DATA):
Exemplo:
DECLARE @consulta NVARCHAR(MAX) = 'SELECT Coluna1, Coluna2 FROM SuaTabela'; EXEC sp_execute_external_script @language = N'Python', @script = N' import pandas as pd # Utilizar dados de consulta SQL df = InputDataSet ', @input_data_1 = @consulta WITH RESULT SETS ((Coluna1 int, Coluna2 varchar(10)));
Esses exemplos ilustram como usar SQL Server Machine Learning Services para integrar scripts Python em consultas T-SQL, passando dados entre as linguagens e retornando resultados formatados como tabelas.
Cientista de Dados e Consultor de Soluções Digitais e Analíticas
@fabioms