思路如下,分别将A与B,A与C进行关联,然后使用 union 进行连接,查询时,直接使用这个查询就可以了(可以建个视图,查询起来比较方便 ),如下:
select d.id, d.namefrom (select A.id, B.name
from A, B
where A.id = B.id
and A.type = '教师'
union
select A.id, C.name
from A, C
where A.id = C.id
and A.type = '教室') d
where d.id = 123
有问题请追问,希望可以帮到你
其实mysql中用的是 and 或 or 关键字,如下,select * from tab where (name=‘张三’ or name=‘李四’)and age <>''
希望对你有帮助
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)