我有3张桌子。 产品表名称:pc_products
id_product|id_merchant|product_name|product_category
123 flipkart glass1 sunglass
456 flipkart glass2 sunglass
126 snapdeal polo1 sunglass
486 snapdeal polo1 sunglass
主键:id_merchant
商家表名称:pc_merchants
slug | retailer
flipkart Flipkart
snapdeal Snapdeal
唯一键:产品表的slug和外键
折扣表:折扣
id|merchant| percentage|category_name
1 flipkart 5 sunglass
2 snapdeal 10 sunglass
预期结果:当我根据该产品的商家和产品类别选择任何产品时,应返回百分比。
告诉我是否需要在表之间进行任何更改作为外键。 我正在使用的查询是:
select feed_product_name,id_merchant,category_name,percentage
from pc_products_merchants m,pc_products p
where m.slug = p.id_merchant and product_name LIKE '%glass1';
在此查询中,我想通过使用上述3个表格检索该产品的百分比(基于其零售商和类别)
答案 0 :(得分:0)
SELECT pc_products.*, pc_merchants.retailer, discount.percentage
FROM pc_products
JOIN pc_merchants ON pc_products.id_merchants = pc_merchants.slug
JOIN discount ON pc_products.product_category = discount.category_name
AND pc_products.id_merchant = discount.merchant
WHERE product_name LIKE '%glass1'
此查询使用显式连接。不再使用隐含的。表之间的关系在FROM语句中声明,而WHERE仅用于过滤数据