sql = db.text("""select date_format(ordertime,'%Y-%m-%d') from xxx""")
结果在执行日志中,发现被转成select date_format(ordertime,'%%Y-%%m-%%d') from xxx
每个百分号前都多了一个百分号(ordertime的精度到了时分秒,这里只要年月日)
查看了下官方文档也没有什么方式,不知道有什么方法
注:这里只是简化了下sql语句,因为语句比较复杂,所以还是回到传统的sql语句来获取数据
from sqlalchemy
import create_engine
from sqlalchemy.orm import sessionmaker
engine = create_engine('mysql_database_engine')
Session = sessionmaker(bind=engine)
sess = Session()
sess.execute("select year(ordertime), month(ordertime), day(ordertime)\
from your_table").fetchall()
要点
使用了execute;
因为要写sql,假设使用的是mysql。使用了mysql中的year,month,day函数。