SELECT TOP 3 a.CheckTime,a.RoomID,a.ClientID,b.ClientName,b.CardID
FROM
(
SELECT TOP 1 CheckTime,RoomID,ClientID,State
FROM TblBusSalesNote
WHERE (State='开单') AND RoomID='{3C9A8AE3-6A71-4FF7-AF64-841A3E928C29}'
ORDER BY CheckTime DESC) a
JOIN TblSysClient b ON a.ClientID=b.ClientID
LEFT JOIN
(
SELECT RoomID ,TechID
FROM TblCliClock
WHERE Batch=REPLACE(REPLACE(REPLACE(CONVERT(NVARCHAR, a.CheckTime,120),'-',''),':',''),' ','')
AND state<>'取消' ) c ON a.RoomID=c.RoomID
LEFT JOIN TblSysTech d ON c.TechID=d.TechID
错误:无法绑定由多个部分组成的标识符,a.CheckTime
请教这个查询应该怎么该写呢?一条语句搞定它。
我现在就没办法取得这个CheckTime,除非用两条sql语句,先查询到CheckTime的值。
FROM
(
SELECT TOP 1 CheckTime,RoomID,ClientID,State
FROM TblBusSalesNote
WHERE (State='开单') AND RoomID='{3C9A8AE3-6A71-4FF7-AF64-841A3E928C29}'
ORDER BY CheckTime DESC) a
JOIN TblSysClient b ON a.ClientID=b.ClientID
这个没有用 你不是也写了吗