Home > database >  How to filter the datetime column in a SQL table with SQLalchemy in python?
How to filter the datetime column in a SQL table with SQLalchemy in python?

Time:11-16

I have a SQL table, and I query the table with SQLalchemy with python.

goog = pd.read_sql("\
\
SELECT dp.price_date, dp.adj_close_price \
FROM symbol AS sym \
INNER JOIN daily_price AS dp \
ON dp.symbol_id = sym.id \
WHERE sym.ticker = 'GOOG' \
ORDER BY dp.price_date ASC",

con = engine,
index_col='price_date')

enter image description here

Now my problem is, the price_date data type is datetime, I tried to filter in the WHERE clause, but failed. Like this:

price_date BETWEEN 2021-11-08 00:00:00.00000 AND 2021-11-12 00:00:00.000000 

and this:

price_date BETWEEN 2021-11-08 AND 2021-11-12

Any solution?

CodePudding user response:

in both cases dates need a single quote

price_date BETWEEN '2021-11-08 00:00:00.00000' AND '2021-11-12 00:00:00.000000' 

and this:

DATE(price_date) BETWEEN '2021-11-08' AND '2021-11-12'

Also good for reading about quotes in mysql When to use single quotes, double quotes, and backticks in MySQL

  • Related