在 oracle 中按顺序更新
Posted
技术标签:
【中文标题】在 oracle 中按顺序更新【英文标题】:update with order by in oracle 【发布时间】:2014-09-13 05:26:49 【问题描述】:我想更新 oracle 中日期字段的表基的第一行。
update table1 set dfry = 9, ctxotb = 10000 where pan = '6363' AND
dfry = 2 and rownum<=1 order by txdate;
错误是:ORA-00933: SQL 命令未正确结束。
谢谢。
【问题讨论】:
【参考方案1】:你可以试试这样的:
UPDATE table1
SET dfry = 9
,ctxotb = 10000
WHERE pan1 = '6363'
AND dfry = 2
AND txdate =
(SELECT min(txdate)
FROM table1
WHERE pan1 = '6363'
AND dfry = 2)
但是,如果有多个记录具有相同的pan1
、dfry
和txdate
,这将更新所有记录,而不是随机选择一个并更新它;您的尝试似乎想要做的事情。
【讨论】:
以上是关于在 oracle 中按顺序更新的主要内容,如果未能解决你的问题,请参考以下文章