loading..
Русский    English
19:28
листать

Упражнение 60

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

Задача 2.3.1

Консоль
Выполнить
  1. SELECT i.point, CASE inc
  2. WHEN NULL
  3. THEN 0
  4. ELSE inc
  5. END -
  6. CASE out
  7. WHEN NULL
  8. THEN 0
  9. ELSE out
  10. END
  11. FROM (SELECT point, SUM(inc) inc
  12. FROM Income_o
  13. WHERE '20010415' > date
  14. GROUP BY point
  15. ) AS I FULL JOIN
  16. (SELECT point, SUM(out) out
  17. FROM Outcome_o
  18. WHERE '20010415' > date
  19. GROUP BY point
  20. ) AS III ON III.point = I.point

Эта задача во многом аналогична предыдущей задаче №59. По сути, здесь дополнительно используется лишь отбор по дате. В связи с этим мы хотим обратить внимание на ее представление в запросе. Дело в том, что в предикате сравнивается строка с полем типа datetime. В  Cистема управления реляционными базами данных (СУБД), разработанная корпорацией Microsoft. Язык структурированных запросов) — универсальный компьютерный язык, применяемый для создания, модификации и управления данными в реляционных базах данных. SQL Server имеется функция CONVERT, которая позволяет преобразовать строковое представление даты/времени к этому типу, используя различные форматы представления даты. Однако строковое представление в виде год месяц день, которое используется в рассматриваемом решении, всегда будет правильно преобразовываться неявно к типу datetime вне зависимости от настроек сервера [5].

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

ПиР

Решить упражнение на SQL-EX.RU

Bookmark and Share
Тэги:
ALL AND AUTO_INCREMENT AVG battles CASE CAST CHAR CHARINDEX CHECK classes COALESCE Convert COUNT CROSS APPLY CTE DATEDIFF DATENAME DATEPART DATETIME DDL DEFAULT DELETE DISTINCT DML EXCEPT EXISTS EXTRACT FROM FULL JOIN GROUP BY Guadalcanal HAVING IDENTITY IN INNER JOIN insert INTERSECT IS NOT NULL ISNULL laptop LEFT LEFT OUTER JOIN LEN maker MAX MIN MONTH MySQL NOT Больше тэгов
Учебник обновлялся
вчера
©SQL-EX,2008 [Развитие] [Связь] [О проекте] [Ссылки] [Team]
Перепечатка материалов сайта возможна только с разрешения автора.
Rambler's Top100