1

私はこれらのテーブルを持っています:

  • 映画 (mID、タイトル、年、監督)
  • レビュアー ( rID, name )
  • 評価 (rID、mID、星、評価日)

およびいくつかのビュー:

  • ビューLateRatingには、2011 年 1 月 20 日以降の映画の評価が含まれます。ビューには、映画 ID、映画のタイトル、星の数、および評価日が含まれます。

    create view LateRating as 
      select distinct R.mID, title, stars, ratingDate 
      from Rating R, Movie M 
      where R.mID = M.mID 
      and ratingDate > '2011-01-20' 
    
  • ビューHighlyRatedには、星 3 つ​​以上の評価が少なくとも 1 つある映画が含まれています。ビューには、映画 ID と映画のタイトルが含まれています。

    create view HighlyRated as 
      select mID, title 
      from Movie 
      where mID in (select mID from Rating where stars > 3) 
    
  • ビューNoRatingには、データベースに評価のない映画が含まれています。ビューには、映画 ID と映画のタイトルが含まれています。

    create view NoRating as 
      select mID, title 
      from Movie 
      where mID not in (select mID from Rating)  
    

これが私のデータセットです: https://prod-c2g.s3.amazonaws.com/db/Winter2013/files/viewmovie.sql

ビューの LateRating で属性 mID、タイトル、および/または星を同時に更新できるようにするには、複数のトリガーを組み合わせた 1 つの代わりのトリガーを作成する必要があります。

単純なトリガーを作成することはできますが、これは複雑に見えますか?どうすればこの問題にアプローチできますか?

4

0 に答える 0