簡體   English   中英

使用 sqlalchemy 將日期時間值從 sql 表檢索到 dataframe

[英]Retrieving a datetime value from a sql table to dataframe using sqlalchemy

我正在嘗試將表檢索到 dataframe 但我收到“ValueError:小時必須在 0..23”。

這是我的代碼:

from sqlalchemy import create_engine
import pyodbc
import pandas as pd

SERVER = '(local)'
DATABASE = 'Projects'
DRIVER = 'SQL Server' 
DATABASE_CONNECTION = f'mssql://@{SERVER}/{DATABASE}?driver={DRIVER}'

engine = create_engine(DATABASE_CONNECTION)
connection = engine.connect()

data = pd.read_sql_query('select TOP 1 * from PRODSYNTHESIS',connection)
#ValueError: hour must be in 0..23

connection.close()
engine.dispose()

表模式

我的理解是,我可能應該使用 python 的 datetime 模塊來處理這種數據類型,但不確定如何到達那里。 我發現的所有其他解決方案都與日期框架本身有關,而不是來自 sql 的數據類型。

不確定,但您始終可以通過在查詢本身中將日期轉換為 ISO8601 字符串來解決問題。 例如:

data = pd.read_sql_query('select TOP 1 Project_id, Project_name, convert(varchar(23), Date_results, 126) Date_results, P_Injecte from PRODSYNTHESIS',connection)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM