Oracle-使用特定值更新行数

Oracle-使用特定值更新行数,oracle,Oracle,这个问题已经贴了好几次了,但我都没能把它写出来。我尝试了中提到的方法。它给了我SQLException:java.sql.SQLException:ORA-01427:单行子查询返回多行错误,不确定我能做什么 下面是我的问题 UPDATE dataTable SET ACCX = (select b.cnt from dataTable a join (SELECT Account,

这个问题已经贴了好几次了,但我都没能把它写出来。我尝试了中提到的方法。它给了我SQLException:java.sql.SQLException:ORA-01427:单行子查询返回多行错误,不确定我能做什么

下面是我的问题

UPDATE dataTable
 SET ACCX = (select b.cnt
               from dataTable a 
                 join
                (SELECT Account,
                       COUNT(1) cnt 
                  FROM  dataTable
                  GROUP BY Account) b 
                  on a.Account=b.Account)
        ,ACCR = 15481
        ,ACCF = 3
  WHERE ID = 1625
我只有访问权限&可以更改为粗体部分,因为查询的其余部分是由工具生成的。我无法更改它&我必须使用列帐户中的值的计数更新ACCX列。有可能吗


注意:-Account列已填充值。

您不能跟踪该查询,因为它是针对sqlserver而不是oracle的。它在oracle中更简单,不需要连接到自身

此更新将仅基于datatable中的帐号数设置id 1625的计数。请看这里的演示;


嗨,我得到下面的错误。ORA-00040:超出活动时间限制-40K记录的调用中止。请注意,我们无法更改Oracle Server中的任何设置。我尝试了所有方法,但无法解决超出活动时间限制的错误。有人能在这里引路吗
update dataTable a
set ACCR = 15481, 
    ACCF = 3, 
    a.ACCX = (
        select COUNT(*)
        from dataTable b
        where b.Account=a.Account)
WHERE a.ID = 1625;