如题,有如下语句对数据库表cert进行检索UPDATE cert A
  SET A.double_certsn = (SELECT B.double_certsn
                         FROM cert B
                         WHERE B.subject = A.subject 
                         AND A.cert_status='Use'                                                         
                         AND B.double_certsn IS NOT NULL )
  WHERE A.double_certsn IS NULL ;检索提示子查询返回条件多于一个因为数据库条目很多,满足上面括号内的检索条件的记录肯定有多个,我只要取得满足子查询的第一条记录赋值给A.double_certsn
如何实现?

解决方案 »

  1.   

    楼上正解UPDATE cert A
      SET A.double_certsn = (SELECT B.double_certsn
                             FROM cert B
                             WHERE B.subject = A.subject 
                             AND A.cert_status='Use'                                                         
                             AND B.double_certsn IS NOT NULL AND ROWNUM = 1 )
      WHERE A.double_certsn IS NULL ;这样就行了