複数のテーブルの複数の行を更新して複数の列を結合するのに問題があります。policyというテーブルの有効期限を更新し、現在施行されているポリシーを持っているすべてのスタッフに、rating_recordというテーブルのレートを10%割引する必要があります。すべての基準を満たす10%の割引を提供することはできますが、有効期限を更新する方法がわかりません。助けてください。
私が今まで持っているコードは、2番目の更新機能を使用してすべてのスタッフの有効期限を1月31日にする必要があるというものです。これは、SQL開発者を使用してOracle10gで実行する必要があります
update rating_record
set rate=(rate-(100/10)) where exists
(select rating_record.rate from
rating_record, coverage, policy, insured_by, client, person, staff
where
staff.pid = person.pid and
client.pid = person.pid and
client.cid = insured_by.cid and
policy.pno = insured_by.pno and
policy.pno = coverage.pno and
coverage.coid = rating_record.coid and
policy.status = 'E');