Mongo反向正则表达式

时间:2012-06-06 10:39:52

标签: regex mongodb reverse

在SQL中,可以运行类似于

的查询
SELECT result FROM table WHERE 'abc-def-ghi' LIKE col1

在这样的桌子上:

col1      | result
abc-%     | 1
abc-d%    | 2
as%       | 3
...       | ...

并获得1和2的结果集。

问题:如何在mongodb中实现相同的效果? 我可以运行正则表达式来匹配字段,但有没有一种方法可以使字段再次匹配提供的数据?

2 个答案:

答案 0 :(得分:0)

您可以使用$ where运算符,例如:

db.col.find({$where: "\"abc\".match(this.col1)"})

虽然MongoDB文档不建议使用$ where,但据我所知,这是唯一的可能性。

(这个问题可能重复。请参阅MongoDB reverse regex

答案 1 :(得分:-3)

db.stuff.find( { col1 : /supplied_data/ }, { result : 1 } );

仅返回结果字段。