我正在尝试在我的 nodejs
应用程序中使用 redis
。我能够完美地保存和检索值(value)。我正在使用散列,它允许我拥有单个唯一键和子键。这里的 offer id 是我的子键,offer 是键。
我正在保存如下报价
let offer = {
offerId: req.query.id,
offerName: req.query.offerName,
offerVendor: req.query.offerVendor
}
client.hset('offer', offer.offerId, JSON.stringify(offer), redis.print);
并像下面这样检索值
try {
console.log('ping response:', await client.ping());
const offerId = req.query.id;
client.hget('offer', offerId, function(err, reply){
let offer = JSON.parse(reply);
res.send(offer);
});
} catch(err) {
console.log('ping error:', err);
}
我想删除基于 id 的报价,就像基于 id 保存或获取一样。我已经阅读了文档 https://github.com/NodeRedis/node_redis#usage-example但没有在那里找到。
根据id删除offer的方法是什么?
最佳答案
如果您已经有了报价 ID,您可以使用 hdel 从报价哈希中删除它命令。您的代码看起来像这样:
client.hdel('offer', id)
调用的结果将是已删除键数的整数计数。如果您不知道客户端 ID,可以使用 hscan 查找它。命令。
关于node.js - 如何在 Node js应用程序的redis中使用hset基于子键删除,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44016038/