在这里,我需要一个别名添加到“表名” AS T的更新已经从XML中获得价值一“从”语句。
UPDATE TableName SET
TableName.PrintedBy = ISNULL(TableName.PrintedBy,der.PrintedBy),
TableName.PrintedDate = ISNULL(TableName.PrintedDate,GETDATE()),
@RetVal=der.NoteId
FROM (
SELECT PrintedBy,NoteId
FROM OPENXML(@hDoc1,'TableName',1)
WITH ( PrintedBy INT 'PrintedBy',
NoteId INT 'NoteId'
)
) as der
WHERE TableName.NoteId = der.NoteId
尝试这个,
UPDATE T SET
T.PrintedBy = ISNULL(T.PrintedBy,der.PrintedBy),
T.PrintedDate = ISNULL(T.PrintedDate,GETDATE()),
@RetVal=der.NoteId
FROM (
SELECT PrintedBy,NoteId
FROM OPENXML(@hDoc1,'TableName',1)
WITH ( PrintedBy INT 'PrintedBy',
NoteId INT 'NoteId'
)
) as der, TableName T
WHERE T.NoteId = der.NoteId