通过表中type来判断与哪个表联查

现有sc_quotation 行情表,sc_user 用户表,sc_admin 管理员表 三张表 现在要使用联查将sc_quotation中的create_user(放的是id)字段变成创建人的名字,但是由于用户和管理员都会进行创建,会导致create_user相同 ,加入type字段 1代表 用户创建,2代表管理员创建 现在要查出行情表所有信息+创建人的名字  所以使用mysql 对type进行判断 然后联查相应的表.

 
 SELECT q.*,IF(q.type=1,(SELECT u.nickname FROM sc_user u WHERE q.create_user=u.id)
   ,(SELECT a.nickname FROM sc_admin a WHERE q.create_user=a.id)) as nickname
from  sc_quotation q

好了 大家有需要的就看看吧

猜你喜欢

转载自blog.csdn.net/baidu_41660182/article/details/81535806