Не могу понять, почему SQL Query не дает мне правильный ответ

0

Im пытается напечатать игроков с зарплатой выше 500 000 $ в 2002 году, которые сделали более 30 homeruns. я должен извлекать данные из двух таблиц, но то, что у меня есть, не работает и дает мне ошибку. Кажется, я не могу понять ошибку, и почему она не дает мне результат, который мне нужен.

SELECT batter.playerID, HR, salary_table.salary, salary_table.yearID

FROM batter, salary_table

JOIN salary_table ON salary_table.playerID = batter.playerID
JOIN salary_table ON salary_table.yearID = batter.yearID

WHERE salary_table.yearID = 2002
AND salary_table.salary > 500000
AND HR > 30
GROUP BY batter.playerID, HR, salary_table.salary, salary_table.yearID;

Ошибка im get is = AILED: SemanticException [Ошибка 10008]: Строка 5: 5 Неоднозначный псевдоним таблицы "зарплата"

Теги:
hive

1 ответ

0
Лучший ответ

Вам не нужно вступать в salary_table несколько раз.

SELECT b.playerID, b.hr, s.salary, s.yearID
FROM batter AS b
JOIN salary_table AS s ON b.playerID = s.playerID AND b.yearID = s.yearID
WHERE s.yearID = 2002
AND s.salary > 500000
AND b.hr > 30

Вам также не нужна GROUP BY, поскольку вы не собираете ничего в таблицах.

  • 0
    О, боже, я глуп, я должен знать, что я учусь на степень магистра компьютерных наук. - Ты лучший человек <3

Ещё вопросы

Сообщество Overcoder
Наверх
Меню