You can use following constructs to filter the Date column using either year or month:
.filter(extract('year', Foo.Date) == 2012)
.filter(extract('month', Foo.Date) == 12)
And group_by is also possible:
.group_by(sqlalchemy.func.year(Foo.Date), sqlalchemy.func.month(Foo.Date))
Now I haven’t tested it, but I assume that this might be slow because these queries result in full table scans, therefore I suggest you invest some time and learn how to use composite columns.
Note: extract() is imported from sqlalchemy.sql