有3个基础表:
messege_list表(通知表)  
ID Title content
01 ssdd   sssgf
02 wwww   ffhff
03 gggg   vnnvnf

Code_sore表(可以接收通知的对象职务表)
ID Posting
01 校长   
01 教师
02 教师
02 主任
03 主任

manage_user_posting表(职务表)  
LoginID Posting
zhansan 校长
zhansan 教师
wangwu 主任
wuwei 主任
lisi 教师

其中messege_list.ID=Code_sore.ID。我的目的是要查询当前的用户是否可以接收到通知内容,比如zhansan和lisi是可以显示messege_list表的ID=01这条通知的。
我要做的事情是查询 manage_user_posting.LoginID=‘wuwei’能够接收的通知列表:
messege_list表(通知表)  
ID Title content
02 wwww   ffhff
03 gggg   vnnvnf
   

解决方案 »

  1.   

    SELECT 
    a.*
    FROM messege_list AS a 
    INNER JOIN messege_list AS b ON a.ID=b.ID
    INNER JOIN manage_user_posting AS c ON c.Posting=b.Posting
    WHERE c.LoginID=N'wuwei'
      

  2.   


    select
     a.* 
    from 
    messege_list as a,
    Code_sore as b,
    manage_user_posting as c
    where
    c.LoginId=N'wuwei' and c.posting=b.posting and b.id=a.id
      

  3.   

    select 
        a.*
    from
        messege_list a ,messege_list  b ,manage_user_posting c
    where
        a.ID=b.ID
    and
        c.Posting=b.Posting
    and
        c.LoginID=N'wuwei'