mysql 怎么从多种维度删选商品

比如,我要价格在20-30 50-60 70-80 价格区间的商品,关系为or
同时标题要包含裙子,上衣,外套关系为or,
还要排除标题包含童装,书籍,关系为and,这样的语句应该怎么写呀,Php这三种都变成一个变量来表达的话应该怎么设计Php?我用的是thinkphp 这个能不能用thinkphp 封装好的增删改查来操作呢?

阅读 2.4k
1 个回答
where ((price > 20 and price < 30) or (price > 50 and price < 60) or (price > 70 and price < 80)) and ((title like .... ) or ...... )

你可以这么写,但是如果你的数据量稍微有点量就非常容易导致很严重的性能问题

你应该使用elasticsearch, sphinx, xunsearch, solr等搜索引擎来解决这个问题

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题