我在 Mysql 中有两个表,产品和库存...
产品 int id_产品 varchar 名称
库存 id_库存 产品编号 存在
因此,当我的产品“3”缺货时,我会删除库存中 Product_id = 3 的行 现在我需要获取在库存中删除的所有值,因为我需要报告丢失的产品...
如何进行此查询?
我使用了 SELECT i.* FROM inventory i, products p WHERE i.product_id!=p.id_product
但它不起作用..
谢谢
最佳答案
LEFT JOIN 会如您所愿,因为您要查找的行在库存中没有与产品中的行对应的行,因此这给出了查询...
SELECT
p.product_id
FROM product p
LEFT JOIN inventory i
ON i.product_id = p.product_id
WHERE i.product_id IS NULL
或者,您可以在不可用时不从 list 中删除该行。然后做类似的事情
SELECT
p.product_id
FROM product p
INNER JOIN inventory i
ON i.product_id = p.product_id
AND i.quantityInStock = 0
无论哪种方式都有效
关于php - 在MYSQL中选择未注册的值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16177970/