簡體   English   中英

如果table2中的列= 1,則來自table1的MySql SELECT

[英]MySql SELECT from table1 if column in table2 = 1

如果table2中具有相同標識符且具有不同列名的列在特定字段中具有1 ,則我需要從table1返回一列。

表格1

表格1

表2

表2

在這個例子中,我想找回item_code 222table1 ,其中alt1888 ,但前提是alt11itemtable2

我已經嘗試了許多內聯查詢和LEFT JOIN變體,但似乎沒有任何東西能夠真正執行任務。 寫出我試過的所有版本都沒有意義,因為它們都沒有用,但是一個例子是:

SELECT item_code FROM table1 WHERE alt1 = "888" 
AND (SELECT item FROM table2 WHERE item = "222" AND alt1 = 1)

以上可能不是我嘗試過的最好的例子,但由於它們都沒有到目前為止工作,所以並不重要。 任何幫助是極大的贊賞。

嘗試這個

SELECT item_code from table1 INNER JOIN 
table2
ON table1.item_code = table2.item where table2.alt1 = 1 and table1.alt1 = 888

希望這有效。

您可以使用JOIN子句:

SELECT t1.item_code 
FROM table1 t1
JOIN table2 t2 ON t1.item_code = t2.item AND t2.alt1 = 1
WHERE t1.alt = 888
SELECT item_code FROM table1 t1 JOIN table2 t2 
       ON t1.item_code = t2.item_code
WHERE t1.alt1 = "888" AND t2.alt1 = 1

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM