没搞懂
是要取vmatstatus表中的mt_id,playername是吧?
并且该mt_id在vp表里对应的group_id在playergroup里对应的groupclass不等于'a'是这样吗?

解决方案 »

  1.   

    select mt_id,playername from vmatstatus where mt_id not in (select mt_id from vp where group_id in (select group_id from playergroup where groupclass= 'a'));
      

  2.   

    这样是不行的
    MYSQL不支持子查询
    你可以在客户端分两步来做
    选执行一次查询
    将结果保存到一个变量(或数组)中做为下一个查询的条件
    然后再执行一次
    查出最终结果
      

  3.   

    多谢了,我已经想出来了,先建一临时表,然后就能就可以了 如下
    create temporary table my_tb1 select vp.groupid,vp.mt_id from vp,playergroup p where vp.groupid = p.group_id and p.groupclass='a'
    select v.mt_id, v.playername from vmatstatus v left join my_tb1 on v.mt_id = my_tb1.mt_id where my_tb1.mt_id is null