【发布时间】:2017-09-15 07:14:48
【问题描述】:
有人可以帮助我不断收到此错误: ORDER BY 子句在视图、内联函数、派生表、子查询和公用表表达式中无效,除非还指定了 TOP、OFFSET 或 FOR XML。 这是我正在使用的查询:
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
);
【问题讨论】:
-
您真正使用的是哪个数据库.. ????您标记 mysql 但您的错误消息似乎是针对 Sql Server ..
-
对不起应该只有sql
-
我不知道为什么您的查询中需要 ORDER BY 语句
-
您希望
ORDER BY子句有什么效果?IN询问“左边的表达式是否出现在右边集合中的任何位置?”。更改右侧集合的“顺序”会如何改变该问题的答案? -
(即使修复了这个问题,从子查询中也可以清楚地看到
SMS包含多个列 - 所以SELECT *也会出错 - column你想让IN比较吗?)
标签: sql sql-server sql-update sql-order-by