sqlalchemy:在datetime列上应用类似SQL的date()函数

时间:2014-03-31 22:16:32

标签: python sql sqlalchemy

我想按日期分组,并使用sqlalchemy计算id的结果数。

不幸的是,我的包含日期信息created_datetime的列是一个日期时间,我想使用像

这样的sql函数

group by date(created_datetime)

以按日期分组。

这是我到目前为止所拥有的......

conn = engine.connect()

s = my_db.my_table.alias()

q = select([s.c.id]).\
    group_by(s.c.created_datetime).\
    count()

result = conn.execute(q)

for i in result:
    print(i)

conn.close()

1 个答案:

答案 0 :(得分:10)

使用sqlalchemy.sql.functions.func

from sqlalchemy.sql import func

q = select([s.c.id]).\
    group_by(func.date(s.c.created_datetime)).\
    count()