扫码关注官方订阅号
84669人学习
65727人学习
82984人学习
467778人学习
498837人学习
471966人学习
256484人学习
152542人学习
224170人学习
139536人学习
81804人学习
85022人学习
11944人学习
20001人学习
60816人学习
5487人学习
15007人学习
2150人学习
6980人学习
194925人学习
359900人学习
1142人学习
19058人学习
3206人学习
180550人学习
48569人学习
17603人学习
40936人学习
1049人学习
750人学习
32909人学习
在一个业务场景中,商品具有多个标签,用户可以通过标签筛选产品;在数据库中,商品与标签是一对多的关系,如何根据几个标签查询符合条件的商品列表呢?我的想法是根据标签逐一查询出相对应的商品列表,然后求交集。有没有更快捷效率更高的方法呢?
ringa_lee
把标签分别标记为1,2,4,8,设置一个标志字段,然后符合标签的对应位数为1,例如同时属于,标签1和3的对应字段就是5,查询的时候先算一下对应数值,然后where =就可以了。
根据标签逐一查询这步我觉得应该可以用SQL直接全部查询出来,这样就不用求交集了,直接查出满足条件的商品列表。
微信扫码关注PHP中文网服务号
QQ扫码加入技术交流群
扫描下载App
Copyright 2014-2024 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
精品班
技术支持
技术咨询
学习群
会员优惠
返回顶部
把标签分别标记为1,2,4,8,设置一个标志字段,然后符合标签的对应位数为1,例如同时属于,标签1和3的对应字段就是5,查询的时候先算一下对应数值,然后where =就可以了。
根据标签逐一查询这步我觉得应该可以用SQL直接全部查询出来,这样就不用求交集了,直接查出满足条件的商品列表。