两个表之间的SQL查询数据过滤器

时间:2019-05-03 10:53:36

标签: mysql

Table1        
ID  Name            
L2  abc        
L3  xyz          
L4  pqr          
L5  ghi

Table 2    
ID code
L4 1
L3 2
L4 4
L2 3
L4 1

在上表中,我想输出我收到的所有具有名称和代码的ID的位置,但ID L4除外,该ID不应包含代码4。

2 个答案:

答案 0 :(得分:0)

您可以使用join和where条件

select a.id,a.name, b.code 
from table1 a left join table2 b on a.id=b.id
and exists (select 1 from table2 c where a.id=c.id and c.code<>4 )

答案 1 :(得分:0)

尝试一下!

select t1.id, t1.name, t2.code 
    from table1 t1 
    inner join table2 t2 on t1.id = t2.id
    where (t2.id != 'L4' or t2.code != 4)