sql >> Base de Datos >  >> RDS >> Mysql

Secuela Cómo comparar el año de una fecha en la consulta

TABLEA.findAll({
  where: sequelize.where(sequelize.fn('YEAR', sequelize.col('dateField')), 2016)
 });

Tienes que usar .where aquí, porque el lado izquierdo de la expresión (la clave) es un objeto, por lo que no se puede usar en el estilo POJO normal como una clave de objeto.

Si quieres combinarlo con otras condiciones puedes hacer:

TABLEA.findAll({
  where: {
    $and: [
      sequelize.where(sequelize.fn('YEAR', sequelize.col('dateField')), 2016),
      { foo: 'bar' }
    ]
  }
 });

https://sequelize.org/v3/docs/querying/#operators