比如我搜索"耐克 篮球鞋", 如何查找同时包含这两个词的结果?
看到的例子中:
{$text: {$search: "耐克 篮球鞋"} 多了些不符合的
{$text: {$search: "\"耐克 篮球鞋\""} 有漏网之鱼
还是通过其他方式实现?
![]() | 1 Jackeriss 2020-06-16 12:15:26 +08:00 via iPhone 换 es |
2 lenqu 2020-06-16 12:19:50 +08:00 ![]() 感觉你这个不是 DBA,不考虑性能的话,进行俩次搜索,将第一次搜索作为第二次搜索结果 |
![]() | 3 leonme 2020-06-16 12:20:30 +08:00 via iPhone 搜索用 ES |
5 zxc12300123 2020-06-16 12:33:07 +08:00 via iPhone elasticsearch |
![]() | 7 guyeu 2020-06-16 15:59:47 +08:00 mongodb 的文本索引对中文的支持有点差。。。将就用呗,将就不了就换 es |
![]() | 8 thinkmore 2020-06-19 18:02:40 +08:00 不建议用 mongodb 实现 |
9 Stypstive 2020-07-22 12:36:00 +08:00 ```Javascript console.log('测试使用 markdown') ``` |
![]() | 10 thinkdiff 2022-11-20 16:23:39 +08:00 {$text: {$search: "\"耐克\" \"篮球鞋\""} |