mysql - 获取表中键与另一个表不匹配的所有行

标签 mysql sql

我有一个名为产品的表和一个名为product_description的表 它们都有一个名为 product_id 的列,用于链接它们。 如何从 product_description 表中获取 product_id 为的所有行 在产品表中找不到?

我尝试过这个:

SELECT * 
FROM `product_description` 
JOIN product ON product_description.product_id = product.product_id
WHERE product_description.product_id != product.product_id

但是返回了零行。

最佳答案

使用左外连接并查找没有匹配的地方:

SELECT product_description.* 
FROM `product_description` left outer join product
      on product_description.product_id = product.product_id
where product.product_id is null

关于mysql - 获取表中键与另一个表不匹配的所有行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19843383/

相关文章:

sql - 从多个相关表中删除

php - 显示用户详细信息而不保存上一个 session

MySQL级联删除一个查询

PHP MySQL 将来自不同行的具有相同值的单元格组合在一起

mysql - 我需要加快对大表的特定 mysql 查询

mysql - 根据类型或类别获取随机产品列表

PHP MySQL 双 While 循环给我带来问题

MySQL - 在同一个表中计数

mysql - Hapi.js 响应 "type":"Buffer"

sql - Postgres 动态列标题(来自另一个表)