Loading...
Rumyana1984 avatar Rumyana1984 13 Точки

Increase Salaries with JOIN

Здравейте,

Защо решението на задачата :

Increase Salaries

Write a SQL query to increase salaries of all employees that are in the Engineering, Tool Design, Marketing or Information Services department by 12%. Then select Salaries column from the Employees table.

се приема за верен от Judge следния код:

UPDATE employees

SET salary=salary+salary*0.12

WHERE department_id IN (1,2,4,11);

SELECT salary FROM employees;

А с този дава 100% грешен резултат:

UPDATE employees
SET salary=salary+salary*0.12;
SELECT e.salary AS Salary
FROM employees AS e
JOIN departments AS d
ON e.department_id= d.department_id
WHERE d.name='Engineering' OR d.name='Tool Design' OR d.name='Marketing' OR d.name='Information Services'
group by e.salary;
 

Тагове:
0
Databases Basics - MySQL
petlv avatar petlv 5 Точки
UPDATE `employees` AS e
SET `salary` = `salary` * 1.12
WHERE `department_id` IN (
	SELECT `department_id` FROM `departments`
	WHERE `name` IN ('Engineering', 'Tool Design', 'Marketing', 'Information Services')
);


SELECT `salary` AS 'Salary' FROM `employees`; 

Аз също се чудя защо моето решение минава нулевия тест, но не и другите тестове.

0
fbinnzhivko avatar fbinnzhivko 1586 Точки

Просто е колеги тестовете са зададени със department_id а не със d.name!
Не знам може и да е друго но това ми едва като идея.

0
15/10/2017 08:57:47
alexanderp avatar alexanderp 13 Точки
UPDATE employees
SET salary=salary+salary*0.12;

Тази заявка променя заплатите на всички редове, а не само на тези от определените deparment-и.

SELECT e.salary AS Salary
FROM employees AS e
JOIN departments AS d
ON e.department_id= d.department_id
WHERE d.name='Engineering' OR d.name='Tool Design' OR d.name='Marketing' OR d.name='Information Services'
group by e.salary;

Тази заявка само показва заплатите на тези employee-та от определените deparment-и.

Задачата изисква горе-долу обратното: да се променят заплатите само на employee-та от определени deparment-и и после да се покажат заплатите на всички employee-та, независимо от deparment-а (точно каквото се случва в кода, който се приема за верен от Judge).

 

0
Rumyana1984 avatar Rumyana1984 13 Точки

Благодаря за разяснението :) 

0
DorothyP avatar DorothyP 0 Точки

Software university is an amazing university. This is one of the best institutes of the state. This institute has been serving the nation for so long. If you will check appointment setting job description and get good skills to make a leaderships. This blog is about increasing salaries. Thanks for sharing this with us.

0
Можем ли да използваме бисквитки?
Ние използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Можете да се съгласите с всички или част от тях.
Назад
Функционални
Използваме бисквитки и подобни технологии, за да предоставим нашите услуги. Използваме „сесийни“ бисквитки, за да Ви идентифицираме временно. Те се пазят само по време на активната употреба на услугите ни. След излизане от приложението, затваряне на браузъра или мобилното устройство, данните се трият. Използваме бисквитки, за да предоставим опцията „Запомни Ме“, която Ви позволява да използвате нашите услуги без да предоставяте потребителско име и парола. Допълнително е възможно да използваме бисквитки за да съхраняваме различни малки настройки, като избор на езика, позиции на менюта и персонализирано съдържание. Използваме бисквитки и за измерване на маркетинговите ни усилия.
Рекламни
Използваме бисквитки, за да измерваме маркетинг ефективността ни, броене на посещения, както и за проследяването дали дадено електронно писмо е било отворено.