Скачиваний:
25
Добавлен:
01.04.2014
Размер:
761.34 Кб
Скачать

64 Понимание sql

______________________________________________________________________

ГЛ. 6

=============== SQL Execution Log ============

| |

| SELECT AVG (amt) |

| FROM Orders; |

| ==============================================|

| |

| ------- |

| 2665.84 |

| |

| |

===============================================

Рисунок 6.2: Выбор среднего

СПЕЦИАЛЬНЫЕ АТРИБУТЫ COUNT

Функция COUNT несколько отличается от всех. Она считает число

значений в данном столбце, или число строк в таблице. Когда она

считает значения столбца, она используется с DISTINCT чтобы

производить счет чисел различных значений в данном поле. Мы могли

бы использовать ее, например, чтобы сосчитать номера продавцов в

настоящее время описаных в таблице Порядков ( вывод показывается

в Рисунке 6.3 ):

SELECT COUNT ( DISTINCT snum )

FROM Orders;

ИСПОЛЬЗОВАНИЕ DISTINCT

Обратите внимание в вышеупомянутом примере, что DISTINCT,

сопровождаемый именем поля с которым он применяется, помещен

в круглые скобки, но не сразу после SELECT, как раньше.

Этого использования DISTINCT с COUNT применяемого к

индивидуальным столбцам, требует стандарт ANSI, но большое

количество программ не предъявляют к ним такого требования.

CУММИРОВАНИЕ ДАННЫХ

С ПОМОЩЬЮ АГРЕГАТНЫХ ФУНКЦИЙ 65

______________________________________________________________________

=============== SQL Execution Log ============

| |

| SELECT COUNT (DISTINCT snum) |

| FROM Orders; |

| ==============================================|

| |

| ------- |

| 5 |

| |

| |

===============================================

Рисунок 6.3: Подсчет значений поля

Вы можете выбирать многочисленые счета( COUNT ) из полей с помощью

DISTINCT в одиночном запросе который, как мы видели в Главе 3, не

выполнялся когда вы выбирали строки с помощью DISTINCT.

DISTINCT может использоваться таким образом, с любой функцией агрегата,

но наиболее часто он используется с COUNT. С MAX и MIN, это просто

не будет иметь никакого эффекта, а SUM и AVG, вы обычно применяете

для включения повторяемых значений, так как они законно эффективнее

общих и средних значений всех столбцов.

ИСПОЛЬЗОВАНИЕ COUNT СО

СТРОКАМИ, А НЕ ЗНАЧЕНИЯМИ

Чтобы подсчитать общее число строк в таблице, используйте функцию

COUNT со звездочкой вместо имени поля, как например в следующем

примере, вывод из которого показан на Рисунке 6.4:

SELECT COUNT (*)

FROM Customers

COUNT со звездочкой включает и NULL и дубликаты, по этой причине

DISTINCT не может быть использован. DISTINCT может производить

более высокие номера чем COUNT особого поля, который удаляет все

Соседние файлы в папке ПОНИМАНИЕ SQL