我有 2 张 table :
Table A: Value 1: Value 2:
id (int) 1 2
from (varchar) josh robert
Table B: Value 1: Value 2:
id (int) 1 2
name (varchar) josh robert
surname (varchar) apple orange
并且有一个关键字“apple”。如果表 B 中的某些值包含带有关键字“apple”的 surname
,如何从表 A 中选择 id
。在本例中,结果应为 1
(来自表 A),因为 josh
具有关键字 apple
。
这就是我所做的:
mysql_query("SELECT id FROM A WHERE from IN (SELECT name FROM B WHERE surname LIKE '%apple%')");`
但它不起作用。
最佳答案
from
是保留关键字。逃脱它:
select id
from A
where `from` in (
select name
from B
where surname like '%apple%'
)
您还可以使用加入:
select a.id
from a
join b on a.`from` = b.name
where b.surname like '%apple%'
关于mysql - SQL - 如果值存在于其他表中,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43032544/