SELECT     TOP (20) MMInfo.*, MCompany.companyname, 
                      M.validtime
FROM         MMInfo INNER JOIN
             MCompany ON MMInfo.managerid = MCompany.managerid
WHERE     (MMInfo.city = '北京')
ORDER BY MMInfo.managerid DESC错误消息:
消息 4104,级别 16,状态 1,第 1 行
无法绑定由多个部分组成的标识符 "MagentMangerInfo.groupid"。把top 20 去掉又好了
现在问题是:如何取得该结果集的前20?

解决方案 »

  1.   

    SELECT           TOP   20   MMInfo.*,   MCompany.companyname,   
                                                M.validtime 
    FROM                   MMInfo   INNER   JOIN 
                              MCompany   ON   MMInfo.managerid   =   MCompany.managerid 
    WHERE           (MMInfo.city   =   '北京 ') 
    ORDER   BY   MMInfo.managerid   DESC 
    top 20   不是 top (20)
      

  2.   


    SET ROWCOUNT 20;
    SELECT    MMInfo.*,   MCompany.companyname,M.validtime 
    FROM  MMInfo   INNER   JOIN  MCompany   ON   MMInfo.managerid   =   MCompany.managerid 
    WHERE           (MMInfo.city   =   '北京 ') 
    ORDER   BY   MMInfo.managerid   DESC 
      

  3.   

     top  (20)是使用数据源生成的
    错误与这没关系
      

  4.   

    SELECT TOP 20 * FROM ( SELECT  MMInfo.*,MCompany.companyname,M.validtime FROM MMInfo INNER JOIN  MCompany ON MMInfo.managerid=MCompany.managerid WHERE (MMInfo.city='北京 ') ORDER BY MMInfo.managerid  DESC)
      

  5.   

    asmetoyou写的好像是oracle下的SQL吧
    SqlServer里好像不行的
      

  6.   

      M.validtime 
    有问题。