WCFM for WooCommerce:通过SQL查询特定商家的全部产品
获取归属特定商家的全部产品SQL查询方案
表关联逻辑(常见电商结构)
电商系统里商家和产品的关联一般分两种:
- 直接关联:
products表自带merchant_id字段,和merchants表的id字段对应(一对多,一个商家对应多个产品) - 中间表关联:如果存在多对多场景(比如一个产品可归属多个商家),会有类似
merchant_product的中间表,同时存储merchant_id和product_id来建立关联
对应SQL查询语句
情况1:产品表直接关联商家表
按商家ID查询
SELECT p.* FROM products p JOIN merchants m ON p.merchant_id = m.id WHERE m.id = '你的目标商家ID';
按商家slug查询
SELECT p.* FROM products p JOIN merchants m ON p.merchant_id = m.id WHERE m.slug = '你的目标商家slug';
情况2:通过中间表关联
按商家ID查询
SELECT p.* FROM products p JOIN merchant_product mp ON p.id = mp.product_id JOIN merchants m ON mp.merchant_id = m.id WHERE m.id = '你的目标商家ID';
按商家slug查询
SELECT p.* FROM products p JOIN merchant_product mp ON p.id = mp.product_id JOIN merchants m ON mp.merchant_id = m.id WHERE m.slug = '你的目标商家slug';
不确定表结构时的排查方法
如果不知道具体表名或字段名,可以先查数据库结构确认:
- 查看数据库内所有表:
SHOW TABLES;(MySQL)或SELECT table_name FROM information_schema.tables WHERE table_schema = '你的数据库名称';(通用SQL) - 查看某张表的字段:
DESCRIBE merchants;(MySQL)或SELECT column_name FROM information_schema.columns WHERE table_name = 'merchants';(通用SQL)
内容的提问来源于stack exchange,提问作者SomeDev
相关产品推荐
相关产品推荐

