Select * from (Select top 100 V_COMNUMS.COMNUM, V_FAVNUMS.FAVNUM,PICINFO.* from V_COMNUMS right join PICINFO on V_COMNUMS.PICID = PICINFO.PICID left join V_FAVNUMS on PICINFO.PICID=V_FAVNUMS.PICID Order by addtime desc) where sortid<>'45' and ISPUBLIC = 1 and ISAUDITING = 1 and  rownum<7
我把括号内单独 拿出来查没问题,可是整体查的话提示Where 附近有语法错误,高手帮忙一下啊

解决方案 »

  1.   

    Select * from (Select top 100 V_COMNUMS.COMNUM, V_FAVNUMS.FAVNUM,PICINFO.* from V_COMNUMS right join PICINFO on V_COMNUMS.PICID = PICINFO.PICID left join V_FAVNUMS on PICINFO.PICID=V_FAVNUMS.PICID Order by addtime desc) 起一个别名 然后 where
      

  2.   

    我那个不行吗?你在where前面起一个别名看看。。
      

  3.   

    你看看这样行不?直接执行
    Select * from (Select top 100 V_COMNUMS.COMNUM, V_FAVNUMS.FAVNUM,PICINFO.* from V_COMNUMS right join PICINFO on V_COMNUMS.PICID = PICINFO.PICID left join V_FAVNUMS on PICINFO.PICID=V_FAVNUMS.PICID Order by addtime desc) t where sortid<>'45' and ISPUBLIC = 1 and ISAUDITING = 1 and  rownum<7