一个商品对应多个分类,同时又需要查询多个分类,怎么写SQL

商品表中,对应分类id的字段,可能是多个分类,比如下面:

id cid title
1 1,3,5 智能手机

对应的分类表如下:

id cate_name pid
1 数码 0
2 手机 1
3 平板 1
4 电脑 1
5 手持设备 1

从表中我们可以看出,智能手机这个商品同时属于数码,平板,手持设备这个三个分类,我前端请求的时候,传递一个“cid”值过来,它可能是单个分类id,也可能是多个,比如“cid”可能为1(数码),也可能为“1,2,3"(同时查询属于数码或手机或平板”的商品,就比如现在前端传过来的cid为“1,2,3”,该怎么写SQL呢

阅读 4.4k
1 个回答

数据量小的话,可以 select * from goods where cid like '%$cid%' 这样的,然后额外查一下 select * from categories where id in explode(',', $cid) 整体查询大致是这样的,我写的不是精确的SQL,楼主对应修改一下就行。

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