Примечание.
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Сочетание T-SQL и Python в современных рабочих процессах данных обеспечивает мощный и гибкий подход, который сочетает сильные стороны обоих языков. SQL остается наиболее эффективным и читаемым способом запроса, фильтрации и соединения структурированных данных, тогда как Python превосходит в преобразовании данных, статистическом анализе, машинном обучении и визуализации. Объединяя T-SQL и Python, инженеры данных могут использовать лучшие из обоих миров, что позволяет создавать надежные конвейеры, которые являются эффективными, обслуживаемыми и способными обрабатывать сложные задачи обработки данных.
В записных книжках Microsoft Fabric Python мы представили новую функцию, называемую магической командой T-SQL. Эта функция позволяет запускать код T-SQL непосредственно в записных книжках Python с полным выделением синтаксиса и завершением кода. Это означает, что вы можете написать код T-SQL в записной книжке Python, и он будет выполняться, как если бы это была ячейка T-SQL. Эта функция полезна для инженеров данных, которые хотят использовать возможности T-SQL, сохраняя гибкость записных книжек Python.
В этой статье мы рассмотрим волшебную команду T-SQL в записных книжках Microsoft Fabric. Мы рассмотрим, как включить эту команду, указать, какое хранилище использовать и как привязать результаты запросов T-SQL к переменным Python.
Эта функция доступна для записных книжек Python Fabric. Необходимо задать язык Python в записной книжке, а тип ячейки — T-SQL.
Important
Эта функция доступна в предварительной версии.
Использование магической команды T-SQL для запроса к хранилищу данных Fabric
Чтобы включить магическую команду T-SQL в записной книжке Fabric, необходимо задать %%tsql магическую команду в начале ячейки. Эта команда указывает, что код в этой ячейке должен рассматриваться как код T-SQL.
В этом примере мы используем магическую команду T-SQL для запроса к хранилищу данных Fabric. Команда принимает следующие параметры:
- Параметр
-artifactзадает имя используемого хранилища данных. Код T-SQL в ячейке выполняется в указанном хранилище данных в Fabric. - Параметр
-typeзадает тип элемента Fabric. Для хранилища данных Fabric используйтеWarehouse. - Параметр
-bindзадает имя переменной для привязки результатов запроса T-SQL к. В следующем примере результаты запроса хранятся в переменной Python с именемdf1. Если необходимо применить любое преобразование к переменной df1, это можно сделать с помощью кода Python в следующей ячейке. Параметр-bindявляется необязательным, но рекомендуется привязать результаты запроса T-SQL к переменной Python. Этот параметр позволяет легко управлять результатами с помощью кода Python и анализировать их. - Параметр
-workspaceявляется необязательным и используется, если хранилище находится в другой рабочей области. Без этого параметра записная книжка использует текущую рабочую область.
%%tsql -artifact dw1 -type Warehouse -bind df1
SELECT TOP (10) [GeographyID],
[ZipCodeBKey],
[County],
[City],
[State],
[Country],
[ZipCode]
FROM [dw1].[dbo].[Geography]
Если параметры -artifact и -type оба пропущены, ноутбук использует складской элемент по умолчанию в текущем ноутбуке.
Использование магической команды T-SQL для запроса к базе данных SQL
Вы также можете использовать магическую команду T-SQL для запроса базы данных SQL в Fabric. Синтаксис аналогичен запросу к хранилищу данных, но -type параметр должен иметь значение SQLDatabase. Параметр -bind задает имя переменной для привязки результатов запроса T-SQL к.
В следующем примере результат запроса хранится в переменной Python с именем df2.
%%tsql -artifact sqldb1 -type SQLDatabase -bind df2
SELECT TOP (10) [AddressID]
,[AddressLine1]
,[AddressLine2]
,[City]
,[StateProvince]
,[CountryRegion]
,[PostalCode]
,[rowguid]
,[ModifiedDate]
FROM [SalesLT].[Address];
Использование магической команды T-SQL для запроса конечной точки аналитики SQL Lakehouse
Вы также можете использовать магическую команду T-SQL для запроса конечной точки аналитики SQL. Синтаксис аналогичен запросу к хранилищу данных, но -type параметр должен иметь значение Lakehouse. Параметр -bind задает имя переменной для привязки результатов запроса T-SQL к.
В следующем примере результат запроса хранится в переменной Python с именем df3.
%%tsql -artifact lakehouse1 -type Lakehouse -bind df3
SELECT TOP (10) [ProductID],
[Name],
[ProductNumber],
[Color],
[StandardCost],
[ListPrice]
FROM [lakehouse1].[dbo].[Product];
Использование магической команды T-SQL в качестве магии строки
Вместо выполнения T-SQL в полной ячейке %%tsql, можно запустить T-SQL в одной строке с %tsql магией командной строки. Однако сначала необходимо установить подключение к сеансу.
Important
Перед использованием механизма строк %tsql необходимо выполнить команду механизма ячейки %%tsql с параметром -session, чтобы инициализировать SQL-контекст. Запуск %tsql без этой настройки приведет к SQLMagicContextInitializationException.
Предварительные требования для магии линий
Инициализация сеанса: в ячейке, в которой используется
%%tsqlмагическая команда, включите параметр-sessionдля установления контекста подключения. Рассмотрим пример.%%tsql -artifact ContosoDWH -type Warehouse -session SELECT TOP(10) * FROM [ContosoDWH].[dbo].[Geography];Используйте магию строки: после инициализации сеанса можно использовать
%tsqlв следующих ячейках. Магия строки будет использовать соединение, установленное на шаге 1, без необходимости указывать-artifactи-typeснова. Рассмотрим пример.df = %tsql SELECT TOP(10) * FROM [ContosoDWH].[dbo].[Geography];
Использование переменных Python в T-SQL
Можно также ссылаться на переменные Python в коде T-SQL. Для этого используйте {} символ, за которым следует имя переменной Python. Например, если у вас есть переменная countPython, вы можете ссылаться на нее, как показано в коде T-SQL:
count = 10
df = %tsql SELECT TOP({count}) * FROM [dw1].[dbo].[Geography];
Чтобы просмотреть полный синтаксис, используйте %tsql? команду. Эта команда отображает справочную информацию для магической команды T-SQL, включая доступные параметры и их описания.
Note
Вы можете выполнять полные команды DML и DDL в хранилище данных или базе данных SQL, но только запросы только для чтения к конечной точке SQL Lakehouse.
Связанный контент
Дополнительные сведения о записных книжках Fabric см. в следующих статьях.
- Questions? Попробуйте запросить сообщество Fabric.
- Suggestions? Вносите идеи для улучшения Fabric.