mysql三表查询问题
表arctype;字段ecshop_id;表goods;字段cat_id,goods_id,goods_name,bought_num;表goods_cat;字段cat_...
表arctype; 字段 ecshop_id;
表goods; 字段 cat_id, goods_id, goods_name, bought_num;
表goods_cat; 字段 cat_id, goods_id;
ecshop_id字段内容与cat_id 对应一样的。
goods表中的goods_id是对应了一个cat_id,而goods_cat表中的每个goods_id都对应了多个 cat_id。
查询出ecshop_id相对应的两表中所有的cat_id字段下的goods_id ,并且按bought_num排序。 展开
表goods; 字段 cat_id, goods_id, goods_name, bought_num;
表goods_cat; 字段 cat_id, goods_id;
ecshop_id字段内容与cat_id 对应一样的。
goods表中的goods_id是对应了一个cat_id,而goods_cat表中的每个goods_id都对应了多个 cat_id。
查询出ecshop_id相对应的两表中所有的cat_id字段下的goods_id ,并且按bought_num排序。 展开
展开全部
你的表设计有问题 商品表goods 中不该有字段cat_id ,goods_id都对应多个 cat_id,会使goods表中的商品信息数据重复出现(比如 cat_id :1 商品A cat_id :2 商品A);商品分类表goods_cat已经记录了各个商品与商品分类的信息
去掉商品表goods 的字段cat_id
sql语句
SELECT g.goods_id from
arctype a,goods_cat c,goods g where a.ecshop_id=c.cat_id and c.goods_id=g.goods_id ORDER BY g.bought_num desc
去掉商品表goods 的字段cat_id
sql语句
SELECT g.goods_id from
arctype a,goods_cat c,goods g where a.ecshop_id=c.cat_id and c.goods_id=g.goods_id ORDER BY g.bought_num desc
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询