title: keyword can't be an expression - filtering in sqlalchemy
body: <p>I create simple database with sqlalchemy</p>
  
  <pre><code>class BlogPost(db.Model):
      id = db.Column(db.Integer, primary_key=True)
      post = db.Column(db.Text, nullable=False)
      create_date = db.Column(db.DateTime, nullable=False)
  </code></pre>
  
  <p>create_date is in format (year-month-day h:m:s.ms):</p>
  
  <pre><code>2018-02-20 21:45:37.591733
  </code></pre>
  
  <p>I used datetime.datetime</p>
  
  <p>I'd like to filter for example all posts with year=2018 and here i got problem:</p>
  
  <pre><code>posts = BlogPost.query.filter_by(create_date.year=2018)
  </code></pre>
  
  <p>it is possible to use datetime.year but i can't use it as an expression in sqlalchemy filtering, above code returns:</p>
  
  <pre><code>SyntaxError: keyword can't be an expression
  </code></pre>
  
  <p>Correct syntax would be: <code>create_date=...</code>, but i need to compare only year, not whole data object</p>
  
  <p>Is it possible to do that in a simple way? Any suggestions?</p>