![](/img/trans.png)
[英]Mysql query error when trying to extract from two different tables with where clause
[英]MySQL: How to get result from 2 different tables with 1 WHERE IN CLAUSE
我有2個具有不同內容的表,由於沒有公共標識符,所以無法聯接表,但是每個表都是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;
在這種情況下,您可以在內部連接處做什么,因此您也可以從Manufacturers_ean中選擇兩列
SELECT pd.products_id, pd.products_short_description, m.ID m.manufacturers_ean
FROM products_description pd
INNER JOIN manufacturers m on m.manufacturers_ean = pd.products_short_description
查詢將是:
SELECT pd.products_id, pd.products_short_description, m.ID, m.manufacturers_ean
FROM products_description pd,manufacturers m
WHERE m.manufacturers_ean = pd.products_short_description
所有人的答案:完美! 有用! 我在哪里標記為已解決?
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.