2016-02-29 3 views
0

These are the tables that I have created for my Database.Пытаясь выполнить сложные запросы, проблемы с ними

Я пытаюсь задать ему несколько запросов, но они не кажущийся работать независимо от того, что я вхожу. Я пытаюсь выяснить следующее:

мой первый был:

select league, teamID from team, player, where Team.Player = Player.PlayerId
выход был сообщение 207

Какой игрок имеет самую низкую зарплату ошибка, то, что его адрес, первый и последний имя? В какой лиге и регионе есть игрок № 100? Сколько игроков сейчас в каждом регионе? В каких командах игрок № 104 играл с 2014 года?

все SQL я написал, чтобы создать это ниже:

CREATE TABLE Team (
    TeamID INT NOT NULL, 
    Team VARCHAR(45) NOT NULL, 
    League VARCHAR(45) NOT NULL, 
    Region VARCHAR(45) NOT NULL, 
    PRIMARY KEY (TeamID)) 

INSERT INTO Team (TeamID, Team, League, Region) VALUES (12, 'Rays', 'American', 'East'); 
INSERT INTO Team (TeamID, Team, League, Region) VALUES (13, 'Giants', 'National', 'West'); 
INSERT INTO Team (TeamID, Team, League, Region) VALUES (14, 'Dodgers', 'National', 'West'); 
INSERT INTO Team (TeamID, Team, League, Region) VALUES (15, 'Blue Jays', 'American', 'East'); 
INSERT INTO Team (TeamID, Team, League, Region) VALUES (16, 'Royals', 'American', 'Central'); 

CREATE TABLE TEAMPLAYER (
    TeamID INT NOT NULL, 
    PlayerID VARCHAR(45) NOT NULL, 
    StartDate DATETIME NOT NULL, 
    EndDate DATETIME NULL, 
    PRIMARY KEY (TeamID, PlayerID)) 

INSERT INTO TEAMPLAYER (TeamID, PlayerID, StartDate, EndDate) VALUES (12, '100', '01/01/2013', NULL); 
INSERT INTO TEAMPLAYER (TeamID, PlayerID, StartDate, EndDate) VALUES (13, '101', '03/05/2014', NULL); 
INSERT INTO TEAMPLAYER (TeamID, PlayerID, StartDate, EndDate) VALUES (14, '102', '09/01/2013', NULL); 
INSERT INTO TEAMPLAYER (TeamID, PlayerID, StartDate, EndDate) VALUES (15, '103', '09/01/2013', '12/31/2013'); 
INSERT INTO TEAMPLAYER (TeamID, PlayerID, StartDate, EndDate) VALUES (16, '104', '06/23/2015', NULL); 
INSERT INTO TEAMPLAYER (TeamID, PlayerID, StartDate, EndDate) VALUES (16, '103', '01/01/2014', NULL); 
INSERT INTO TEAMPLAYER (TeamID, PlayerID, StartDate, EndDate) VALUES (12, '104', '03/05/2014', '06/22/2015'); 
INSERT INTO TEAMPLAYER (TeamID, PlayerID, StartDate, EndDate) VALUES (14, '103', '01/01/2008', '08/31/2013'); 
INSERT INTO TEAMPLAYER (TeamID, PlayerID, StartDate, EndDate) VALUES (15, '102', '05/05/2010', '08/31/2013'); 

CREATE TABLE Player (
    PlayerID INT NOT NULL, 
    PlayerLName VARCHAR(45) NOT NULL, 
    PlayerFName VARCHAR(45) NOT NULL, 
    HomeAddress VARCHAR(45) NULL, 
    Salary INT NOT NULL, 
    AgentID INT NOT NULL, 
    PRIMARY KEY (PlayerID)) 

INSERT INTO Player (PlayerID, PlayerLName, PlayerFName, HomeAddress, Salary, AgentID) VALUES (100, 'Jones', 'Larry', '1421 Rovetta Way', 500000, 35); 
INSERT INTO Player (PlayerID, PlayerLName, PlayerFName, HomeAddress, Salary, AgentID) VALUES (101, 'Armstrong', 'Sam', '221 Sovereign', 500000, 35); 
INSERT INTO Player (PlayerID, PlayerLName, PlayerFName, HomeAddress, Salary, AgentID) VALUES (102, 'Jones', 'David', '3333 Skip St', 300000, 34); 
INSERT INTO Player (PlayerID, PlayerLName, PlayerFName, HomeAddress, Salary, AgentID) VALUES (103, 'Ortiz', 'David', '1111 Jones Ave', 1400000, 36); 
INSERT INTO Player (PlayerID, PlayerLName, PlayerFName, HomeAddress, Salary, AgentID) VALUES (104, 'Davis', 'Chris', '1111 Jones Ave', 1100000, 38); 

CREATE TABLE Agent (
    AgentID INT NOT NULL, 
    AgentLName VARCHAR(45) NOT NULL, 
    AgentFName VARCHAR(45) NOT NULL, 
    AgentAddress VARCHAR(45) NOT NULL, 
    Phone BIGINT NOT NULL, 
    PRIMARY KEY (AgentID)) 

INSERT INTO Agent (AgentID, AgentLName, AgentFName, AgentAddress, Phone) VALUES (34, 'Brown', 'Harry', '100 Smart Way', 2135552222); 
INSERT INTO Agent (AgentID, AgentLName, AgentFName, AgentAddress, Phone) VALUES (35, 'Griffey', 'Ken', '150 Leaping Lizard', 2485332391); 
INSERT INTO Agent (AgentID, AgentLName, AgentFName, AgentAddress, Phone) VALUES (36, 'Brown', 'Norma', '175 Hartford', 5863435932); 
INSERT INTO Agent (AgentID, AgentLName, AgentFName, AgentAddress, Phone) VALUES (37, 'Armstrong', 'Deb', '1210 Clifton', 8505756157); 
INSERT INTO Agent (AgentID, AgentLName, AgentFName, AgentAddress, Phone) VALUES (38, 'Armstrong', 'Ken', '1210 Clifton', 8505756158); 
+0

Приведите пример ваших запросов, которые не работают, и какую ошибку вы получаете с ними. –

+0

Можете ли вы показать нам запросы, которые вы написали до сих пор, и каков их вывод? –

+0

По крайней мере, пометьте правильную СУРБД и поставьте таблицы данных внутри вашего вопроса. Начать [здесь] (http://spaghettidba.com/2015/04/24/how-to-post-at-sql-question-on-a-public-forum/) –

ответ

1

Вашего первого запрос на выборке имеет лишнюю запятую, но он использует очень плохой метод кодирования называется неявное соединение. Нет никаких обстоятельств, когда вы должны когда-либо использовать их. Попробуйте:

select league, teamID from team 
inner join player 
on Team.Player = Player.PlayerId 

Все остальные запросы довольно просты, если вы используете соединения. Если вы не знаете, как это сделать, тогда прочитайте их и внимательно ознакомьтесь с ними. Вы никогда не сможете эффективно запросить, не понимая объединения.

Смежные вопросы