我需要从 table1
返回一个列,如果 table2
中的列具有相同的标识符但列名不同,并且有一个 1
在特定领域。
表 1
表2
在这个例子中,我想从 table1
中检索 item_code
222
,其中 alt1
是 888
,但仅当 table2
中的 item
的 alt1
为 1
时。
我已经尝试了很多内联查询和 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
希望这能奏效。
关于如果表 2 中的列 = 1,则 MySql 从表 1 中选择,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40286436/