首页 > 解决方案 > SQL - 创建表和查询 - 正确吗?

问题描述

** 仅使用常规 SQL,此解决方案是否正确?**

为以下场景设计一个数据库:您需要跟踪敏捷比赛中的所有狗。每场比赛他们都有不同的项目,每只狗都有每个项目的分数。此外,编写 SQL 查询以返回比赛中的所有狗、每只狗参加的赛事以及它们在该赛事中获得的分数。

CREATE TABLE Dogs (
  Name STRING,
  EventId INT
)
CREATE TABLE Events (
  Name STRING,
  Id INT
)
CREATE TABLE Scores (
  Score INT,
  EventId INT
)
SELECT name
FROM Dogs 
INNER JOIN Events On Events.Id = Dogs.EventId
INNER JOIN Scores On Events.Id = Scores.Event.Id

标签: sqldatabase

解决方案


试试你的桌子

CREATE TABLE Dogs ( Name STRING, DogId INT ) CREATE TABLE Events ( Name STRING, EventId INT ) CREATE TABLE Scores ( Score INT, ScoreId INT ) CREATE TABLE dog_Event ( dogid INT, ScoreId INT ) CREATE TABLE Score_Event( EventId INT, ScoreId INT )

对它们进行内部连接!


推荐阅读