我正在为使用 mongo 进行汽车存储的汽车网站构建一个非常复杂的搜索公式。我发现其中的大部分内容都非常简单。它目前支持按车身样式、新车/二手车等进行过滤。不过,我遇到问题的地方是它默认为新车和二手车,因为它们都有单独的价格范围(计算的低和高价格基于每月付款范围)。我怎样才能使这项工作?
例如,如果它只是一辆二手车,我们将使用这个 (CodeIgniter) 代码:
$this->mongo_db->where('stock_type', 'used');
$this->mongo_db->where_between('internet_price', $amounts['bottom_amt_used'], $amounts['top_amt_used']);
我们为新车做类似的事情。单独工作很好。我如何组合这些以便我可以找到
- IF stock_type = new, WHERE_BETWEEN(a, b)
- 或 IF stock_type = false, WHERE_BETWEEN(c, d)
并将其与其他过滤器结合使用,例如 WHERE body_style IN (...)?
我们正在使用 CodeIgniter 和 Alex Bilbie 的 mongodb 库,这可能会使事情变得复杂,我在想。