Iremos conhecer as técnicas:
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):
- Ao passar parâmetros entre T-SQL e scripts R ou Python, você geralmente usa o tipo de dados NVARCHAR para converter dados entre diferentes tipos. Isso é comum ao passar strings, por exemplo.
Exemplo:
DECLARE @parametro NVARCHAR(100) = 'Exemplo';
2. Importar biblioteca Python (PACKAGE):
- Ao utilizar Python no SQL Server, você precisa importar as bibliotecas necessárias para o seu script.
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):
- Ao manipular dados em Python, você frequentemente converte variáveis em DataFrames, uma estrutura tabular eficiente.
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):
- Após executar o script, você pode retornar os resultados como um conjunto de resultados, que pode ser tratado no SQL Server.
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):
- Você pode passar dados de uma consulta T-SQL para scripts Python ou R utilizando o parâmetro @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.