如何编写类似于"SELECT * FROM chats WHERE sender_id = 1 AND receiver _id = 2 OR sender_id = 2 AND receiver _



我想显示这个数据

[
{ chattext : 'hi', sender_id : 1, receiver_id : 2 }
{ chattext : 'hello', sender_id : 2, receiver_id : 1 }
{ chattext : 'how are you?', sender_id : 1, receiver_id : 2 }
]

如何为下面的集合编写mongoose查询

const chatSchema = new mongoose.Schema({
chattext : String,
sender_id : Number,
receiver_id : Number,
})

因此,结果将类似

user1 : "hi"
user2 : "hello"
user1 : "how are you?"
var arr =await Chat.find();
arr.map((ar)=>{
console.log("user"+ar.sender_id+' : "'+ar.chattext'"');
}

记住你需要

const Chat = require("../Models/yourChatmodel");

这是我得到的解决方案

我知道答案了,兄弟!Luckyly我从一个询问a或b与b或

const chats = Chat.find({
$or : [
{ $and : [{ sender : 1 }, { receiver : 2 }] },
{ $and : [{ sender : 2 }, { receiver : 1 }] },
]
}

最新更新