请帮助解决问题:
我有两张桌子:
product (pro_id,cat_id,...)
category(cat_id,cat_name...)
我将cat_id存储在产品中作为字符串。
例如:
在表格产品中:pro_id: 1 & cat_id: 2,3,4; pro_id=2 & cat_id: 2,3,7
在表格类别中:cat_id: 1, cat_id: 2, cat_id: 3....
现在,我想通过cat_id
获取产品表中的所有记录。
例如:我想获取所有产品where cat_id=2
。
任何解决方案?谢谢你的帮助
答案 0 :(得分:0)
只需将2作为字符串即'2'
SELECT * FROM product WHERE cat_id = '2';
答案 1 :(得分:0)
如果您想按类别表中的列搜索产品,请执行以下操作:
SELECT *, category.cat_name from product
JOIN category on category.cat_id = CAST(product.cat_id AS UNSIGNED)
where category.cat_name like '%myname%';
我建议你为product.cat_id列创建一个索引,或者我认为你的数据库会遇到严重的性能问题......
就是这样!