有人可以帮助我继续收到此错误: 除非还指定了TOP,OFFSET或FOR XML,否则ORDER BY子句在视图,内联函数,派生表,子查询和公用表表达式中无效。 这是我使用的查询:
UPDATE SMS
SET idx30 = 'New'
WHERE idx30 in
(
SELECT *
FROM SMS
WHERE idx30 IS NULL
AND (idx15 = 'Del' OR idx15 = 'Fail')
AND Idx13 <> '1'
AND Idx7 >= DATEADD(day, -1, GETDATE())
ORDER BY idx7 DESC
);
答案 0 :(得分:0)
您只需更新符合条件的行即可。不需要子查询或ORDER BY。
UPDATE SMS
SET idx30 = 'New'
WHERE (idx15 = 'Del' OR idx15 = 'Fail')
AND Idx13 <> '1'
AND Idx7 >= DATEADD(day, -1, GETDATE())
答案 1 :(得分:0)
查询中的两个更正是:
订单错误即将发生,因为查询中的order by子句是语法错误。
你在子查询中写了*,这将再次抛出错误
当EXISTS没有引入子查询时,只能在选择列表中指定一个表达式。