我正在尝试在 MongoDB Compass 中进行一些基本过滤,但我一直没有得到任何结果。这是一个没有过滤的例子
这是过滤
我尝试了以下过滤器,但它们都不起作用:
{"INSTALL_TYPE" : /.*vpos.*/}
{"DIVISION" : /.*20.*/}
{"DIVISION" : "20"}
但是,在同一数据库的另一个表中,搜索工作正常。
当我尝试在这张表中的 MongoDB Compass 中进行过滤时,为什么我没有得到任何结果?
我正在尝试在 MongoDB Compass 中进行一些基本过滤,但我一直没有得到任何结果。这是一个没有过滤的例子
这是过滤
我尝试了以下过滤器,但它们都不起作用:
{"INSTALL_TYPE" : /.*vpos.*/}
{"DIVISION" : /.*20.*/}
{"DIVISION" : "20"}
但是,在同一数据库的另一个表中,搜索工作正常。
当我尝试在这张表中的 MongoDB Compass 中进行过滤时,为什么我没有得到任何结果?
具体来说,包含引号的列名将导致 Compass 的行为与 OP 描述的一样。如果您的 CSV 如下所示:
"INCIDENT_ID"
"2016376978"
导入指南针。请注意,列标题包含双引号,因此过滤器不会产生结果。
正如公认的答案所说,我没有改变我的任何价值观。我只更改了列标题,所以我的 CSV 看起来像这样:
INCIDENT_ID
"2016376978"
现在导入集合意味着列标题将没有引号,并且与以前相同的过滤器不会产生结果(即使值本身包含双引号):
编辑
为了澄清,您可能仍希望在导入 .csv 之前从 CSV值中删除双引号。就我而言,从值中删除双引号会很方便并且更接近我的期望。
问题是由于字符串中有引号。从 Oracle SQL 导出表时,引号将一些值括起来。然后当我导入 CSV 时,包含所有值的 CSV 引用导入良好。但是,当导入只有一些值带有引号的 CSV 时,会导致这些条目在字符串中带有引号。
清除所有包含引号的 CSV 文件、清空表格并重新导入 CSV,使所有条目不再具有引号。现在过滤工作正常。