SELECT BillHistory.*,E.EmployeeName as WhoHoldName,EE.EmployeeName as FromWhoName
FROM BillHistory CS把BillHistory 的别名CS去掉,改为SELECT BillHistory.*,E.EmployeeName as WhoHoldName,EE.EmployeeName as FromWhoName
FROM BillHistory 
left join EmployeeInfo as E 
on E.EmployeeID=BillHistory.WhoHold 
left join EmployeeInfo as EE on EE.EmployeeID=BillHistory.FromWho
WHERE (BillHistory.ID =
          (SELECT MAX(BillHistory.ID)
         FROM BillHistory
         WHERE BillHistory.BillID = CS.BillID))

解决方案 »

  1.   

    这样试试
    SELECT BillHistory.*,E.EmployeeName as WhoHoldName,EE.EmployeeName as FromWhoName
    FROM BillHistory 
    left join EmployeeInfo as E 
    on E.EmployeeID=BillHistory.WhoHold 
    left join EmployeeInfo as EE on EE.EmployeeID=BillHistory.FromWho
    WHERE (BillHistory.ID =
              (SELECT MAX(BillHistory.ID)
             FROM BillHistory xxxx
             WHERE xxxx.BillID = BillHistory.BillID))
      

  2.   

    SELECT BillHistory.*,E.EmployeeName as WhoHoldName,EE.EmployeeName as FromWhoName
    FROM BillHistory 
    left join EmployeeInfo as E 
    on E.EmployeeID=BillHistory.WhoHold 
    left join EmployeeInfo as EE on EE.EmployeeID=BillHistory.FromWho
    WHERE (BillHistory.ID =
              (SELECT MAX(xxxx.ID)
             FROM BillHistory xxxx
             WHERE xxxx.BillID = BillHistory.BillID))
      

  3.   

    错误提示:聚合不应出现在 WHERE 子句中,除非该聚合位于 HAVING 子句或选择列表所包含的子查询中,并且要对其进行聚合的列是外部引用。
    不行呀!
    怎么办哪:(
      

  4.   

    試試看...SELECT BillHistory.*,E.EmployeeName as WhoHoldName,EE.EmployeeName as FromWhoName
    FROM BillHistory
    left join EmployeeInfo as E 
    on E.EmployeeID=BillHistory.WhoHold 
    left join EmployeeInfo as EE on EE.EmployeeID=BillHistory.FromWho
    WHERE BillHistory.ID =
              (SELECT MAX(BillHistory.ID)
             FROM BillHistory
             group by ID)