如何在mongo中编写相应的以下内容?在检查条件之前,我需要忽略特定列中的某些字符(空格,连字符).为了举一个mysql的例子,我只是删除空间.
select * from TABLE
where REPLACE('name', ' ', '') = 'TEST'
Run Code Online (Sandbox Code Playgroud)
因此,如果name列具有应该匹配的"TES T".
您可以$where在查询中尝试使用运算符:
{$where: "this.name.replace(/[ -]/g,'') == 'TEST'"}
Run Code Online (Sandbox Code Playgroud)
要么:
{$where: "this.name.match(/T[ -]*E[ -]*S[ -]*T/)"}
Run Code Online (Sandbox Code Playgroud)
或直接a $regex:
{name: /T[ -]*E[ -]*S[ -]*T/}
Run Code Online (Sandbox Code Playgroud)