SELECT * FROM ssm_role_menu_relation t 
WHERE NOT EXISTS (SELECT 1 FROM ssm_menu m WHERE t.menu_id = m.menu_id);
刚刚写的,查询ssm_role_menu_relation表中,不在ssm_menu表的数据
和in和not in语句有些类似,只是语法不一样

解决方案 »

  1.   

    加勒比海盗大牛啊  如果你两表里关联的条件不是一对一   是一对多 或者多对多 你这样关联  会出现问题吗  t.menu_id = m.menu_id  
      

  2.   

    exists只是提供子查询的一种方式,子查询中的表怎么和外面的表作关联完全取决于你写的条件,和一对一和多对多没什么关系
    你可以去百度下,或者问下你身边的人,稍微给你说下就明白了
      

  3.   

    加勒比海盗大牛啊  如果你两表里关联的条件不是一对一   是一对多 或者多对多 你这样关联  会出现问题吗  t.menu_id = m.menu_id  看来楼主不太明白啊,你所担心的完全误解了。好比说 select * from a,b where a.id = b.id 这样你会去担心一对多的情况么。例子无误,楼主可以建几个表自己试试,体验一下,光说一点用处没有,就算现在明白了,睡一觉就没了