日期:2014-05-19  浏览次数:20610 次

帮我解释一段SQL查询
SELECT   a.articleid,   a.title,   a.content,   a.pubdate,   a.userid,   a.hostip,   u.nickname,a.farticleid  
FROM   (  
              SELECT   articleid  
              FROM   (  
        SELECT   articleid
        FROM   (  
                    SELECT   articleid   FROM   article   a   WHERE   a.articleid=a.farticleid
)m  
      )n
          )   b,   article   a,   userinfo   u   WHERE   b.articleid   =   a.farticleid   AND   a.articleid <> b.articleid   AND   a.userid   =   u.userid  

=================================================================
上面这段查询语句,第一句SELECT   a.articleid,   a.title,   a.content,   a.pubdate,   a.userid,   a.hostip,   u.nickname,a.farticleid怎么能从查询结果为articleid的结果中查询出.articleid,   a.title,   a.content,   a.pubdate,   a.userid,   a.hostip,   u.nickname,a.farticleid这些字段?
谁能我解释下?感谢!

------解决方案--------------------
你的from语句中有三个表相连,分别是b(来自子查询,只有一个字段articleid),a(代表表article表),u(代表userinfo 表).而 a.articleid则代表a(即article表中的字段articleid),当然title等字段也是article表中有的字段.而nickname则是userinfo表中的字段.