sql >> Base de Datos >  >> RDS >> PostgreSQL

¿Cómo implementar PostgresQL tsvector para la búsqueda de texto completo usando Sequelize?

Sequelize versión 6.5.0+ tiene soporte para el TSVECTOR tipo de datos. Pero hasta el momento no hay documentación en ninguna parte que pueda encontrar, así que:

Declararlo:

sequelize.define('User', {
  myVector: { type: DataTypes.TSVECTOR },
  ...
})

Rellénalo:

User.myVector = sequelize.fn('to_tsvector', 'My Content About Travel and Apparently Some Cures')

Úselo en una consulta:

User.findAll({
  where: { 
    myVector: { [Op.match]: sequelize.fn('to_tsquery', 'Travel | Cure') }
  }
})

Explore la solicitud de extracción para obtener más detalles:https://github.com/sequelize/sequelize/pull /12955