如何修改跨表导出SQL查询,仅导出库存≥1的商品数据?
解决方案
直接在原查询的WHERE条件中添加库存筛选规则即可,同时推荐使用更规范的INNER JOIN语法来关联两张表(和原查询的关联逻辑完全一致,但可读性更强):
SELECT products.id, products.slug, products.sku, products.price, products.vat_rate, products.stock, products.brand, products.ean, products.gender, product_details.title, product_details.description FROM products INNER JOIN product_details ON products.id = product_details.id WHERE products.stock >= 1;
关键说明
INNER JOIN会自动只返回两张表中ID匹配的记录,满足你“验证两张表ID一致”的要求WHERE products.stock >= 1明确筛选出库存数量≥1的商品- 保留了你原查询中需要导出的所有字段,不会影响后续XML导出的数据结构
内容的提问来源于stack exchange,提问作者Marcin Wierzycki
相关产品推荐
相关产品推荐

