假设
A表:ID STATUS
1 0
2 0
3 0
4 0
5 0B表:
ID STATUS PID
1 0 1
2 1 1
3 1 2
4 1 3
5 1 5
6 0 5A表的ID和B表的PID字段是主外键关系,
现在想更新A表的STATUS字段为1,
条件是B表中PID相同的记录,其STATUS字段全都为1,则把A表对应的ID值的记录更新STATUS为1.请教SQL如何写?
A表:ID STATUS
1 0
2 0
3 0
4 0
5 0B表:
ID STATUS PID
1 0 1
2 1 1
3 1 2
4 1 3
5 1 5
6 0 5A表的ID和B表的PID字段是主外键关系,
现在想更新A表的STATUS字段为1,
条件是B表中PID相同的记录,其STATUS字段全都为1,则把A表对应的ID值的记录更新STATUS为1.请教SQL如何写?
解决方案 »
- win7 64系统安装 oracle11g-64位版本报错什么原因?怎么解决?
- 谁帮忙看一下METALINK Bug 7308054的信息啊?
- 紧急求助:请有METALINK帐号的朋友帮查一下 430146.1 万分感激
- like 与 = 效率上有区别吗?
- 从存储过程中返回结果集?
- PowerDesigner设计Oracle9i表,生成的脚本中表名和列名自动带双引号,怎么能去掉双引号?
- 谁来帮帮我 关于ROWNUM的问题
- 从本地exp表到远程oracle,提示 只有 DBA 才能导入由其它 DBA 导出的文件,有什么解决办法?
- 在oracle客户端中如何使用exp80命令导出oracle服务器中的备份?
- 问一个关于long类型数据的老问题
- oracle怎么找出一张表中相同数据
- 不知道密码的情况下如何备份数据库
select 1 from (select pid,avg(status)ag from b)
where ag=1 and pid=a.id)
update a set status=1 where exists(
select 1 from (select pid,avg(status)ag from b group by pid)
where ag=1 and pid=a.id)