php - MySQL:如何使用 1 个 WHERE IN CLAUSE 从 2 个不同的表中获取结果

标签 php mysql

我有 2 个内容不同的表,并且无法连接表,因为没有公共(public)标识符,但每个表都是 1 列,内容相同。我需要从这两列中提取内容,并希望从每条相同的记录中获取 ID。以下查询提取我已经知道/拥有的内容,但我没有从 WHERE IN 表中获取 ID。

查询

SELECT pd.products_id, pd.products_short_description 
FROM products_description pd
WHERE pd.products_short_description IN (SELECT m.manufacturers_ean FROM manufacturers m)

结果

ID | products_short_description
-------------------------------
2  | BMW

这就是我需要的:

ID | products_short_description | ID | manufacturers_ean
--------------------------------------------------------
2  | BMW                        | 285| BMW

最佳答案

SELECT pd.products_id, pd.products_short_description, m.manufacturers_id, m.manufacturers_ean
FROM products_description pd INNER JOIN manufacturers m ON pd.products_short_description = m.manufacturers_ean;

关于php - MySQL:如何使用 1 个 WHERE IN CLAUSE 从 2 个不同的表中获取结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44904728/

相关文章:

脚本完成执行后 php-cgi 进程未关闭 - PHP5.3.3、Win Server 2003、apache

php - 使用 CodeIgniter Active Records 对多个数据库进行 MySQL 优化

php - 如何在codeigniter中使用JOIN显示两个表的结果?

php - 我被要求建立一个网上商店,我应该使用哪种脚本语言?

php - SQL 查询可以使用 2 AND 吗?

php - 无法使用循环在表中插入值

MySQL在分组后获得第一个非空值

mysql - 将 3 个表连接在一起

mysql - 当 EXPLAIN 看起来很好时,为什么这个查询要检查这么多行?

php - PHP 中 PEAR 的用途