MySQL内部联接,其中列=(可能的值列表)
找不到这个问题的答案。基本上我有两张这样的桌子: 表1:MySQL内部联接,其中列=(可能的值列表),mysql,Mysql,找不到这个问题的答案。基本上我有两张这样的桌子: 表1: id name 1 john 2 bill 3 tim 表2: prodid value 1 blar 2 test 3 meh 我想执行一个联接,根据我为table1.name指定的值列表返回table2.value列 因此,我有一个价值观列表(john,tim) 我认为这会奏效: select table2.value, table1.name from table2 i
id name
1 john
2 bill
3 tim
表2:
prodid value
1 blar
2 test
3 meh
我想执行一个联接,根据我为table1.name指定的值列表返回table2.value列
因此,我有一个价值观列表(john,tim)
我认为这会奏效:
select table2.value, table1.name
from table2
inner JOIN
table1 on
table2.prodid in (select id from table where name in ('john', 'tim'))
但这会返回大量结果,并返回不在我的姓名列表中的列
我相信这是很愚蠢的,但有没有任何指向我哪里出了问题的指示
谢谢 带有筛选条件的简单联接应执行以下操作:
select
t1.name,
t2.value
from table2 t2
join table1 t1 on t1.id = t2.prodid
where t1.name in ('john', 'tim')
您的预期输出是什么?我希望看到表2中的值“blar”和“meh”,旁边有“john”和“tim”。非常感谢您的快速响应和解决方案!