русс | укр

Языки программирования

ПаскальСиАссемблерJavaMatlabPhpHtmlJavaScriptCSSC#DelphiТурбо Пролог

Компьютерные сетиСистемное программное обеспечениеИнформационные технологииПрограммирование

Все о программировании


Linux Unix Алгоритмические языки Аналоговые и гибридные вычислительные устройства Архитектура микроконтроллеров Введение в разработку распределенных информационных систем Введение в численные методы Дискретная математика Информационное обслуживание пользователей Информация и моделирование в управлении производством Компьютерная графика Математическое и компьютерное моделирование Моделирование Нейрокомпьютеры Проектирование программ диагностики компьютерных систем и сетей Проектирование системных программ Системы счисления Теория статистики Теория оптимизации Уроки AutoCAD 3D Уроки базы данных Access Уроки Orcad Цифровые автоматы Шпаргалки по компьютеру Шпаргалки по программированию Экспертные системы Элементы теории информации

FROM Personal


Дата добавления: 2015-07-09; просмотров: 487; Нарушение авторских прав


18)
SUМ (Prodano) SUМ (Plan) (SUМ (Prodano) – SUM(Plan)) SUM (Prodano Plan)

Можна було сподіватися, що вирази

(SUМ (Prodano) – SUM(Plan))

та SUМ (Prodano - Plan)

дадуть ті самі результати, але це не так. Причиною різних результатів є рядок із значенням NULL в стовпчику Plan.

Вираз SUM (Prodano)

- обчислює суму продаж для всіх шести працівників, а вираз

SUМ (Plan)

- обчислює суму тільки п’ять значень і не враховує значення NULL.

Наступний вираз обчислює різницю між цими двома сумами:

SUМ (Prodano) – SUM (Plan)

З іншої сторони, вираз

SUМ (Prodano - Plan)

приймає в якості аргументів лише п’ять значень, які не дорівнюють NULL. В рядку, де значення запланованого об’єму продаж дорівнює NULL (для Внучки), будь-який вираз, що містить поле Plan, отримає значення NULL (а отже, Prodano – Plan ® NULL), і це значення функції SUМ ( ) проігнорує. Отже, результати цього вирази не враховують фактичні продажі працівника, для якого ще не встановлено плану, хоча вони ввійшли в результат попереднього виразу. Яка ж відповідь є “вірною”? Обидві! Перший вираз обчислює саме те, що і означає, тобто “сума по Prodano мінус сума по Plan” і другий вираз також обчислює саме те, що означає, тобто “сума по різницях між Prodano і Plan”, але при наявності значень NULL результати виразів – відрізняються.

Ось точні правила опрацювання значень, NULL статистичними функціями:

1. якщо якісь значення, що містяться в стовпчику, дорівнюють NULL, то при обчисленні результату функції вони ігнорують ( не враховуються);

2. якщо всі значення в стовпчику дорівнює NULL, то функції SUМ ( ), AVG ( ), MIN ( ), MAX ( ) повертають значення NULL; функція COUNT ( ) повертає Æ;

3. якщо стовпчик не містить значень (порожній стовпчик Ü порожня таблиця),



то

 
 

 

 


COUNT ( ) ® Æ

4. функція COUNT (*) підраховує кількість рядків і не залежить від наявності чи відсутності в якомусь стовпчику значень NULL; якщо рядків в таблиці – немає, то

COUNT (*) ® Æ.

Комерційні (промислові) СУБД можуть по-іншому опрацьовувати NULL – значення статистичними функціями, ніж це описано в стандарті SQL - треба дивитися опис конкретної СУБД.



<== предыдущая лекция | следующая лекция ==>
Агрегатні функції | Групування записів


Карта сайта Карта сайта укр


Уроки php mysql Программирование

Онлайн система счисления Калькулятор онлайн обычный Инженерный калькулятор онлайн Замена русских букв на английские для вебмастеров Замена русских букв на английские

Аппаратное и программное обеспечение Графика и компьютерная сфера Интегрированная геоинформационная система Интернет Компьютер Комплектующие компьютера Лекции Методы и средства измерений неэлектрических величин Обслуживание компьютерных и периферийных устройств Операционные системы Параллельное программирование Проектирование электронных средств Периферийные устройства Полезные ресурсы для программистов Программы для программистов Статьи для программистов Cтруктура и организация данных


 


Не нашли то, что искали? Google вам в помощь!

 
 

© life-prog.ru При использовании материалов прямая ссылка на сайт обязательна.

Генерация страницы за: 4.483 сек.