这里是SQL UPDATE我试图执行:SQL查询错误 - 我做错了什么?
UPDATE T
SET T.CurrentStopNumber = TS.CurrentStopNumber
FROM Trip T
INNER JOIN (SELECT TripId, MIN(StopNumber) CurrentStopNumber
FROM TripStop
WHERE TripId = '106504'
AND (IsPickup = 1 OR IsDrop = 1)
AND StopNumber > (SELECT COALESCE(max(StopNumber), 0)
FROM TripUpdate
WHERE TripId = '106504'
AND Type = 2)) TS ON T.TripId = TS.TripId
我得到第二行错误:
/* Error message: SQL script is wrong mismatched input . expecting "EQ" */
我熟悉SQL Server和我敢肯定,这将在SQL运行服务器就好了。子查询运行正常,并返回1行,如我所料。我只需要用该值更新表格。哪里不对?
似乎不支持连接。我没有像你只是建议我修改WHERE部分: UPDATE旅行 SET currentstopnumber = (SELECT MIN(StopNumber) FROM TripStop WHERE TRIPID = '106504' AND(IsPickup = 1或IsDrop = 1) AND StopNumber>(SELECT COALESCE(max(StopNumber),0)FROM TripUpdate WHERE TripId ='106504'AND Type = 2) ) WHI TripId ='106504' – katit 2011-05-12 02:49:12