【问题标题】:SQLite queries to find data according to my ER diagramSQLite 查询根据我的 ER 图查找数据
【发布时间】:2018-12-17 06:45:43
【问题描述】:

Database StructureE/R diagrams

大家好,我已经为我的作业创建了这个数据库结构。您可以从下图中看到限制条件。

Constraints

我现在需要为这两个问题找到 sql 查询。但我是 sql 新手,对复杂查询不太擅长。谁能帮我?

问题是:

  1. 特定 subreddit 每天可以获得多少 cmets?
  2. 评论特定链接的用户还发布到了哪些子版块?

【问题讨论】:

  • 您还没有提出明确的问题,因为我们看不到您的数据,而且您似乎也没有努力自己解决这个问题。
  • 我有 3 个表,如 E/R 图中所示,postsTable usersTable 和 subs Table。我已经为此回答了其他 7 个问题并坚持了这两个问题。所以想在这里问。
  • 这里没有人喜欢代码图像、元数据等,所以将其发布为文本。并解释为什么我们应该在你不付出任何努力的情况下完成你的作业?

标签: sql database sqlite


【解决方案1】:

就目前而言,您将无法根据您的图像使用表,因为引用的列不限于唯一,根据SQLite Foreign Key Support

一个特定的 subreddit 每天可以获得多少个 cmets?

您在所选 (WHERE clause) 子版块上使用 count aggregate function 的查询,指出您无法区分日期(除非子版块本身是按天计算的) )。

例如

SELECT count() FROM the_table WHERE the_column = the_value_to be_matched

请注意,您必须确保文字值 (the_value_to_be_matched) 符合 expression 的规则。

评论特定链接的用户还发布了 子版块?

假设您想要结果集中的多行并且您想要用户表中的作者列,那么您需要根据您的条件(WHERE 子句)使用JOIN 选择行以包含相关表中的列(请注意,如果列名不是唯一的,则必须在列名前加上表名和分隔 . (句点/句号) 以解决歧义) .

例如

SELECT your_table.your_column FROM your_table JOIN the_related_table ON your_table.your_column_that_references_the_related_table = your_related_table.your_column_that_is_related_to
WHERE your_expression;

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-05
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多