{
    "version": "https:\/\/jsonfeed.org\/version\/1.1",
    "title": "Заметки — Игорь К.: заметки с тегом SQL",
    "_rss_description": "Блог Игоря К. о маркетинге, аналитике, фотографии и жизни...",
    "_rss_language": "ru",
    "_itunes_email": "",
    "_itunes_categories_xml": "",
    "_itunes_image": "",
    "_itunes_explicit": "",
    "home_page_url": "https:\/\/blog.fossko.ru\/tags\/sql\/",
    "feed_url": "https:\/\/blog.fossko.ru\/tags\/sql\/json\/",
    "icon": "https:\/\/blog.fossko.ru\/pictures\/userpic\/userpic@2x.jpg?1610628098",
    "authors": [
        {
            "name": "Игорь К.",
            "url": "https:\/\/blog.fossko.ru\/",
            "avatar": "https:\/\/blog.fossko.ru\/pictures\/userpic\/userpic@2x.jpg?1610628098"
        }
    ],
    "items": [
        {
            "id": "507",
            "url": "https:\/\/blog.fossko.ru\/all\/vypolnyaem-sql-zapros-v-pitone\/",
            "title": "Выполняем SQL запрос в питоне",
            "content_html": "<p>В питоне можно выполнить запрос к базе данных на SQL сервере, а ответ получить как датасет пандос.<\/p>\n<p>Импортируем библиотеки, в примере мы будем подключаться к MS SQL серверу, но можно подключаться к другим базам данных, используя нужную библиотеку.<\/p>\n<pre class=\"e2-text-code\"><code class=\"\">import pyodbc\nimport pandas as pd<\/code><\/pre><p>В переменную con запишем подключение к SQL серверу<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># создание подключения к базе данных\ncon = pyodbc.connect(&quot;Driver={SQL Server Native Client 11.0};&quot;\n                      &quot;Server=NAME_SQL_SERVER;&quot;\n                      &quot;Database=NAME_BASE;&quot;\n                      &quot;Trusted_Connection=yes;&quot;)<\/code><\/pre><p>Функция select — для быстрой отправки sql запроса, на входе sql запрос, на выходе результат выполнения<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># функция отправки запроса к базе sql\ndef select(sql):\n    return pd.read_sql(sql,con)<\/code><\/pre><p>Используем тройные кавычки, для переноса построчно, иначе нужно писать в одну строку<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># Переменной sql присваиваем запрос\nsql=&#039;&#039;&#039;\n\nDECLARE\n@today DATE,\n@yesterday DATE\n\nSELECT\n@yesterday = DATEADD(day, -1, CAST(GETDATE() AS date))  --вчера в виде даты без времени\n,@today = CAST(GETDATE() AS date)  --сегодня в виде даты без времени\n\nSELECT \n  *  \nFROM table.data\n\nWHERE\n DataZvonka &lt;= @yesterday \n and\n DataPrihoda &gt;= @today\n\n&#039;&#039;&#039;<\/code><\/pre><p>Присваиваем датасету df, результат выполнения запроса sql<\/p>\n<pre class=\"e2-text-code\"><code class=\"\"># создание датасета с данными запроса\ndf=select(sql)<\/code><\/pre><p>Дальше можно производить вычисления в пандос, и делать что нужно с данными, например, записать в гугл таблицу, отправить в телеграм группу.<\/p>\n",
            "date_published": "2023-04-20T17:16:02+03:00",
            "date_modified": "2023-04-21T23:27:01+03:00",
            "tags": [
                "SQL",
                "автоматизация",
                "питон"
            ],
            "_date_published_rfc2822": "Thu, 20 Apr 2023 17:16:02 +0300",
            "_rss_guid_is_permalink": "false",
            "_rss_guid": "507",
            "_e2_data": {
                "is_favourite": false,
                "links_required": [
                    "highlight\/highlight.js",
                    "highlight\/highlight.css"
                ],
                "og_images": []
            }
        }
    ],
    "_e2_version": 4171,
    "_e2_ua_string": "Aegea 11.4 (v4171)"
}