• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:ORACEL UPDATEがうまくいきません)

ORACEL UPDATEがうまくいかない?対処法を教えてください

このQ&Aのポイント
  • 明けましておめでとうございます。本年もよろしくお願いします。覚えたてのRANK関数を使って以下の処理を実現したいのですが、うまくいきません。エラー”ORA-01427: 単一行副問合せにより2つ以上の行が戻されます”が出てしまいます。どのように対処すれば良いか、教えて頂けないでしょうか?
  • SQL文も長々となってしまい、後々メンテ時には苦労しそうなので、RANK文以外に何かいい案があれば教えて頂きたいと思います。マージは使用しない方針らしいので、それ以外で何かないでしょうか・・
  • トランより抽出したレコードの店CDより、マスタのデータを更新する。存在しない店CDの場合、追加を行う。ただしトラン上に同一店CDのレコードが複数存在する場合は、登録日の新しいもの優先する。登録日が同じ場合は、登録者の大きい方を対象とする。登録日、登録者ともに同じ場合は、連番の小さい方を優先する。

質問者が選んだベストアンサー

  • ベストアンサー
  • pcb39431
  • ベストアンサー率84% (16/19)
回答No.1

>UPDATEの方は、UPDATE文を除いてSELECT文では店コードは各1件しか表示されない とのことですが、 最後のWHERE句のところで、トラン.店CD=マスタ.店CD が必要なような気がするのですが。

tkuzume
質問者

お礼

pcb39431 様 >...最後のWHERE句のところで、トラン.店CD=マスタ.店CD が必要なような気がするのですが。 ご指摘頂いた内容を加え、正しく動作できました。 ありがとうございました。 また、よろしくお願いします。