@loyal
В MongoDB, чтобы удалить последние несколько записей, вы можете использовать метод deleteMany() с параметром sort() и limit(). Вот пример:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 |
// Подключение к MongoDB
const MongoClient = require('mongodb').MongoClient;
// URL подключения и настройки
const url = 'mongodb://localhost:27017';
const dbName = 'mydatabase';
// Подключение к серверу MongoDB
MongoClient.connect(url, function(err, client) {
if (err) throw err;
// Выбор базы данных
const db = client.db(dbName);
// Определение коллекции
const collection = db.collection('mycollection');
// Удаление последних 5 записей
collection.find().sort({_id: -1}).limit(5).toArray(function(err, docs) {
if (err) throw err;
// Удаление найденных записей
collection.deleteMany({_id: {$in: docs.map(doc => doc._id)}}, function(err, result) {
if (err) throw err;
console.log('Удалено', result.deletedCount, 'документов');
// Закрытие соединения
client.close();
});
});
});
|
В этом примере мы подключаемся к серверу MongoDB, выбираем базу данных и определяем коллекцию. Затем мы сортируем все записи по убыванию _id и ограничиваем результат только 5 документами с помощью методов sort() и limit(). После этого мы удаляем найденные документы с помощью метода deleteMany().