【问题标题】:How to write my query in Relational Algebra?如何在关系代数中编写我的查询?
【发布时间】:2016-04-15 19:32:54
【问题描述】:

我有一个包含酒店评论文件的数据集。每个文件包含单个酒店的多个评论。这是我在 BCNF 中的两个关系:

  1. 酒店(hotelID、OverallRating、AveragePrice、URL)
  2. Review(hotelID, Author, Content, Date, No. Reader, No. Helpful, 总体而言,价值,房间,位置,清洁度,入住/前台, 服务、商业服务)

我正在尝试用关系代数编写以下查询:

Find all the reviews by the same user (i.e., given a user ID, return the list of all their 
reviews).

按用户 ID,问题是指在我的第二个关系中找到的作者属性。我理解这个问题的方式,它必须以用户 ID 作为参数。也许你的看法不同?

这是我目前所拥有的:

(Selection) Author = $1 (Review)

用用于表示关系代数中的选择的 sigma 符号替换选择,我在将其插入我的问题时遇到了麻烦。 $1 代表它会在哪里使用用户 ID 参数,这只是表明我的想法,我认为它不正确。

感谢您的宝贵时间

【问题讨论】:

    标签: relational-algebra


    【解决方案1】:

    查询将是:

    σ(Author="Your_User Id") (Hotel Join(X)(Hotel.hotelID=Review.hotelID) Review )

    在哪里

     σ = Selection Operator
    
      X= Join Operator
    
      (-----) = Condition
    

    希望对您有所帮助。有关详细信息,请参阅我的 DBMS 笔记:Relational Algebra 在网站中搜索“关系代数”术语,快速找到您的确切信息。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-09-29
      • 1970-01-01
      • 1970-01-01
      • 2022-06-28
      • 1970-01-01
      相关资源
      最近更新 更多