• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:OracleのViewの作り方)

OracleのViewの作り方

このQ&Aのポイント
  • OracleのViewの作り方について解説します。
  • ‘あ行’と‘か行’という2つのテーブルから‘ひらがな’というViewを作成する方法について説明します。
  • Viewを使用して、‘い’の項目を直接更新せずに、‘あ’の項目が指定した値であるレコードに対して‘い’の項目を更新する方法について説明します。

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

  • ベストアンサー
  • msystem
  • ベストアンサー率42% (79/186)
回答No.1

条件がもうひとつはっきりしないので、よく分かりませんが、取りあえず、亜行テーブルからは、全行を、か行テーブルからは、条件に合うもののみを持ってくるViewのSelect文は以下のようになると思います。 select か行.か,あ行.あ,あ行.い from あ行,か行 where あ行.あ=か行.あ(+) 「い」をUpdateしたい、ということですが、それはあ行テーブルの「い」でしょうか?それともか行テーブル?、両方?そのあたりがはっきりしないと分かりませんが、2つ以上のテーブルを結合させたViewに対し、Updateをかけるのは難しいと基本的に思っていただいたほうが良いかと思います。 どうしても、Updateをかけたいという場合の方法として、ひとつの案ですが、テンポラリテーブルを作ります。(「か」、「あ」、「い」列のあるもの)これに対し、あ行テーブルの変更などに対してのトリガー、か行テーブルに対しての変更に対するトリガー、テンポラリテーブルに対する変更を元テーブルに書き戻すためのトリガーを作成するれば、テンポラリテーブルをViewのように使うことができると思います。