我是mongodb的新手,我想知道如何构建与以下sql语句等价的语句:
SELECT * FROM users WHERE CONCAT(firstName, ' ', lastName) LIKE CONCAT('Walter Whi', '%')
qvsjd97n1#
sql中的concat等同于mongodb中的aggregate方法。sql中的表与mongodb中的文档相等。sql中的select等同于mongodb中的projection方法。db.users.aggregate([{$project:{userdescription:{$concat:[“$firstname”,“-”,“$lastname”]}}},{$match:{$firstname:“walter whi”}}])详情请参阅本文件。https://docs.mongodb.com/manual/reference/operator/aggregation/match/
p1tboqfb2#
你可以找到这样的例子
db.users.insert({name: 'paulo'}) db.users.insert({name: 'patric'}) db.users.insert({name: 'pedro'}) db.users.find({name: /a/}) //like '%a%' out: paulo, patric db.users.find({name: /^pa/}) //like 'pa%' out: paulo, patric db.users.find({name: /ro$/}) //like '%ro' db.students.aggregate( { $project: {studentNo:"$studentNo" , name: { $concat: [ "$firstName", " ", "$lastName" ] },age:"$age"}}, {$match:{ "name":/Suraj/}})
project用于列出所有列加上两列,然后搜索新记录聚合是mongodb中的一种方式,我们可以在其中添加where、having等子句。更多了解,请点击这里学习
2条答案
按热度按时间qvsjd97n1#
sql中的concat等同于mongodb中的aggregate方法。sql中的表与mongodb中的文档相等。sql中的select等同于mongodb中的projection方法。
db.users.aggregate([{$project:{userdescription:{$concat:[“$firstname”,“-”,“$lastname”]}}},{$match:{$firstname:“walter whi”}}])
详情请参阅本文件。https://docs.mongodb.com/manual/reference/operator/aggregation/match/
p1tboqfb2#
你可以找到这样的例子
project用于列出所有列加上两列,然后搜索新记录
聚合是mongodb中的一种方式,我们可以在其中添加where、having等子句。
更多了解,请点击这里学习