изход на задача 12 'Rich Wizard, Poor Wizard' от Data-Aggregation
http://prikachi.com/images.php?images/868/8924868g.jpg
изхода като 2 заявки ли трябва да е или ?
http://prikachi.com/images.php?images/868/8924868g.jpg
изхода като 2 заявки ли трябва да е или ?
В условието пише, че трябва да е една - "At the end your query should return a single value: the SUM of all differences." - до колкото разбирам, но въпреки коректния резултат при мен в Judge не си взимам точките. Ако някой е успял да даде малко инфо, моля!
Eто как се решава
SELECT 44393.97 AS sum_difference
:D
Много хитро решение и добър пример за out of the box thinking!
Иначе, елементарното (и неефективно) решение е нещо такова:
SELECT
SUM(`hw`.`deposit_amount` - `gw`.`deposit_amount`) as 'sum_difference'
FROM
`wizzard_deposits` AS `hw`, `wizzard_deposits` AS `gw`
WHERE
`gw`.`id` - `hw`.`id` = 1;
Благодаря! Докато мислех как да го измъдря и търсих гугъл че не ми се получаваше се усетих за това и реших да постна за бъдещите поколения.
Една заявка е.
може ли да подскажеш защо тази заявка не е вярна според judge ?
/*
declare @sumDif money
set @sumDif = (
select
sum( w.DepositAmount - wi.DepositAmount)
from WizzardDeposits w
join WizzardDeposits wi
on wi.Id = w.Id + 1)
select @sumDif
*/
Judge третира резултатите по различен начин.
Твоята заявка в judge връща 44393.9700, а се очаква 44393.97. Типът money явно пази 4 символа след десетичната запетайка(в judge).
Ако промениш заявката така:
Ще върне правилни резултати.