pandas.read_sql_query#

pandas.read_sql_query(sql, con, index_col=None, coerce_float=True, params=None, parse_dates=None, chunksize=None, dtype=None, dtype_backend=)[источник]#

Прочитать SQL-запрос в DataFrame.

Возвращает DataFrame, соответствующий результирующему набору строк запроса. При необходимости укажите index_col параметр для использования одного из столбцов в качестве индекса, в противном случае будет использоваться стандартный целочисленный индекс.

Параметры:
sqlстроковый SQL-запрос или SQLAlchemy Selectable (объект select или text)

SQL-запрос для выполнения.

conПодключение SQLAlchemy, строка или соединение sqlite3

Использование SQLAlchemy позволяет использовать любую БД, поддерживаемую этой библиотекой. Если объект DBAPI2, поддерживается только sqlite3.

index_colstr или список str, опционально, по умолчанию: None

Столбец(ы) для установки в качестве индекса (MultiIndex).

coerce_floatbool, по умолчанию True

Попытки преобразовать значения объектов, не являющихся строками или числами (например, decimal.Decimal) в числа с плавающей точкой. Полезно для наборов результатов SQL.

paramsсписок, кортеж или отображение, необязательно, по умолчанию: None

Список параметров для передачи методу execute. Синтаксис, используемый для передачи параметров, зависит от драйвера базы данных. Проверьте документацию вашего драйвера базы данных, чтобы узнать, какой из пяти стилей синтаксиса, описанных в paramstyle PEP 249, поддерживается. Например, для psycopg2 используется %(name)s, поэтому используйте params={'name': 'value'}.

parse_datesсписок или словарь, по умолчанию: None
  • Список имён столбцов для парсинга как даты.

  • Словарь {column_name: format string} где строка формата совместима с strftime в случае разбора строкового времени или является одной из (D, s, ns, ms, us) в случае разбора целочисленных временных меток.

  • Словарь {column_name: arg dict}, где словарь arg соответствует ключевым аргументам pandas.to_datetime() Особенно полезно с базами данных без нативной поддержки Datetime, такими как SQLite.

chunksizeint, по умолчанию None

Если указано, вернуть итератор, где chunksize это количество строк, включаемых в каждый фрагмент.

dtypeИмя типа или словарь столбцов

Тип данных для данных или столбцов. Например, np.float64 или {'a': np.float64, 'b': np.int32, 'c': 'Int64'}.

Добавлено в версии 1.3.0.

dtype_backend{'numpy_nullable', 'pyarrow'}, по умолчанию 'numpy_nullable'

Тип данных бэкенда, примененный к результирующему DataFrame (все еще экспериментальная). Поведение следующее:

  • "numpy_nullable": возвращает поддерживаемый нуллифицируемым типом данных DataFrame (по умолчанию).

  • "pyarrow": возвращает nullable на основе pyarrow ArrowDtype DataFrame.

Добавлено в версии 2.0.

Возвращает:
DataFrame или Iterator[DataFrame]

Смотрите также

read_sql_table

Прочитать таблицу базы данных SQL в DataFrame.

read_sql

Чтение SQL-запроса или таблицы базы данных в DataFrame.

Примечания

Любые значения даты и времени с информацией о часовом поясе, разобранные через parse_dates параметр будет преобразован в UTC.

Примеры

>>> from sqlalchemy import create_engine  
>>> engine = create_engine("sqlite:///database.db")  
>>> with engine.connect() as conn, conn.begin():  
...     data = pd.read_sql_table("data", conn)