Sequalize найти последние созданные и обновленные_ - PullRequest
0 голосов
/ 09 апреля 2019

Мне нужно найти последнюю запись в таблице. Он должен учитывать оба поля созданного и обновленного. Если я добавлю новые данные, то они должны появиться первыми, или, если я отредактирую, то они должны появиться первыми.

db.model.findAll({
  order: [ [ 'created_at ', 'DESC' ]]
}).then(function(data){
}); 

С помощью приведенного выше кода я могу перечислить только записи на основе созданного_кода, как объединить как созданный_отчет и обновленный_атт?

Ответы [ 2 ]

0 голосов
/ 09 апреля 2019
    db.model.findAll({
      order: [
             [sequelize.literal('created_at, updated_at'), 'desc']
      ]
    }).then(function(data){
        console.log(data);
    });

Попробуйте вот так

0 голосов
/ 09 апреля 2019

Вы можете использовать функцию coalesce в Postgres:

db.model.findAll({
  order: [ [ sequelize.fn('COALESCE', 'updated_at', 'created_at '), 'DESC' ]]
}).then(function(data){
});

Функция coalesce проверяет, является ли первый аргумент нулевым.Если нет, он возвращает его, иначе он возвращает второй аргумент.Если аргументов больше двух, цепочка нулевых проверок.

...