如题,有如下语句对数据库表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
如何实现?
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
如何实现?
解决方案 »
- 请问如何让一个表的b字段通过类似默认值的方式让其等于A字段的值
- 修改一个字段,在该字段后面全部加一个字符‘1’
- oracle性能的设计和开发(翻译版)。附带散分的奖励
- Oracle 一个简单的插入语句问题
- 急求一个oracle存储过程!急!
- 视图是怎么回事?
- SQL SERVER存储过程转为ORACLE存储过程,遇到难题
- 在SCO OpenServer5.0.x+Oracle7.3.3下,C怎么调用OCI访问数据库呢?代码又如何编译?
- 请问Oracle中有没有在制定的时间里自动执行一段PL/SQL程序的功能?
- Oracle MRP如何考虑同一物料编码出现两个Lead time
- 查询结果列合并
- 存储过程查看所有信息
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 ;这样就行了