Руководство для начинающих по использованию SQL в Python

Как специалисту по обработке данных / аналитику, нам, как правило, необходимо устанавливать связи с различными инструментами для решения нашей бизнес-проблемы. чаще всего нам нужно получить данные из реляционной базы данных, которая размещена либо на вашем локальном сервере, либо в центральной базе данных, которая находится в облаке. Итак, как мы можем извлекать данные из базы данных, один из способов - мы будем извлекать данные, запустив сценарий SQL, сохраним данные в Excel и импортируем этот файл Excel в Python. Однако наиболее эффективный способ использовать SQL прямо в Python.

Прежде чем начать, многие из нас могут захотеть узнать, что такое SQL?

SQL означает язык структурированных запросов, который представляет собой язык баз данных, используемый для извлечения / обработки или запроса данных, хранящихся в системе управления реляционными базами данных (СУБД). Существуют и другие варианты обработки таких данных, но SQL был самым популярным и широко используемым языком в отрасли.

Что умеет SQL?

  • Выполнять запросы к базе данных
  • Получать данные из базы данных
  • Вставить записи в базу данных
  • Обновить записи в базе данных
  • Удалить записи из базы данных
  • Создавать новые базы данных
  • Создавать новые таблицы в базе данных
  • Создавать представления в базе данных

Почему нужно использовать SQL в Python?

Как вы знаете, нам нужно получить данные из базы данных, поэтому один из способов - извлечь данные, запустив сценарий SQL, сохранить данные в Excel и импортировать этот файл Excel в Python. другой способ, который является наиболее эффективным способом использования SQL непосредственно в Python.

Какие библиотеки обеспечивают связь между SQL и Python?

Для этой цели было разработано множество библиотек, которые можно использовать. В этом руководстве я буду использовать библиотеку Pyodbc с интеграцией с Pandas.

Установка

Чтобы установить библиотеку pyodbc, выполните приведенный ниже код, эта команда автоматически загружает и устанавливает библиотеку.

pip install pyodbc

Импорт необходимых библиотек

на этом этапе мы импортируем важные библиотеки, которые будем использовать в этом руководстве.

import pandas as pd
import pyodbc

Быстрый старт

После импорта библиотеки нам нужно получить следующие сведения.

Получить имя сервера

Получить имя базы данных

Затем получите имя базы данных, в которой хранится нужная вам таблица.

Получите имя таблицы

Теперь вам нужно получить имя нужной таблицы, в которой хранятся данные, а затем, после сбора данных, обновить данные в формате ниже.

server = 'INxxxxxxxxx' # your local server name 
database = 'xxxxx-old'  # database name that is stored in server

Создание соединения и курсора.

connection = pyodbc.connect('driver={SQL Server};server=xxxxxxx;database=xxxxxxx')
cursor = connection.cursor()
cursor

Запросы данных с использованием операторов SQL

Теперь, когда вы подключены к базе данных, вы можете отправлять запросы данных. В каждом запросе должны присутствовать два основных предложения: SELECT и FROM.

Синтекс

ВЫБРАТЬ столбец1, столбец2,…
ИЗ имя_таблицы;

После получения ответа из базы данных нам нужно поместить его во фрейм данных pandas.

query='select * from [dbo].[Iris_data]'
# To extract all columns 
x=pd.read_sql(query,connection)
x.head()

Если мы хотим извлечь какие-то определенные столбцы, мы можем сделать это, выполнив приведенный ниже код.

query='select sepal_length,sepal_width  from [dbo].[Iris_data]'
pd.read_sql(query,connection)

Если вы хотите получить отдельные строки из столбца, вы можете запустить этот оператор SQL:

query='select distinct  sepal_length  from [dbo].[Iris_data]'
pd.read_sql(query,connection)

Приведенные выше утверждения охватывают основы SQL в Python. Точно так же вы можете написать еще много SQL-операторов, которые можно использовать в python. Для получения дополнительных сведений о SQL вы можете обратиться к этой ссылке.

Заключение.

Существует множество библиотек, которые могут помочь нам взаимодействовать с SQL и Python, я считаю, что интеграция с несколькими инструментами может быть действительно продуктивной и может дать потрясающие результаты.

Я надеюсь, что эта статья поможет вам и даст новый взгляд на вещи. Дайте мне знать, если у вас есть предложения.

Удачного обучения.

Прабхат Патхак (профиль в Linkedin) - младший аналитик.