Выполняем SQL запрос в питоне
В питоне можно выполнить запрос к базе данных на SQL сервере, а ответ получить как датасет пандос.
Импортируем библиотеки, в примере мы будем подключаться к MS SQL серверу, но можно подключаться к другим базам данных, используя нужную библиотеку.
import pyodbc
import pandas as pdВ переменную con запишем подключение к SQL серверу
# создание подключения к базе данных
con = pyodbc.connect("Driver={SQL Server Native Client 11.0};"
"Server=NAME_SQL_SERVER;"
"Database=NAME_BASE;"
"Trusted_Connection=yes;")Функция select — для быстрой отправки sql запроса, на входе sql запрос, на выходе результат выполнения
# функция отправки запроса к базе sql
def select(sql):
return pd.read_sql(sql,con)Используем тройные кавычки, для переноса построчно, иначе нужно писать в одну строку
# Переменной sql присваиваем запрос
sql='''
DECLARE
@today DATE,
@yesterday DATE
SELECT
@yesterday = DATEADD(day, -1, CAST(GETDATE() AS date)) --вчера в виде даты без времени
,@today = CAST(GETDATE() AS date) --сегодня в виде даты без времени
SELECT
*
FROM table.data
WHERE
DataZvonka <= @yesterday
and
DataPrihoda >= @today
'''Присваиваем датасету df, результат выполнения запроса sql
# создание датасета с данными запроса
df=select(sql)Дальше можно производить вычисления в пандос, и делать что нужно с данными, например, записать в гугл таблицу, отправить в телеграм группу.