Добавил:
Upload Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:
Lec_07_MA_4_Функции Access.doc
Скачиваний:
4
Добавлен:
26.04.2019
Размер:
220.67 Кб
Скачать

Функция Dcount

Функция DCount используется, чтобы определить количество записей в указанном наборе записей (подмножестве). Функция DCount используется в Visual Basic, в макросе, модуле, выражении запроса или в вычисляемом элементе управления.

Например, используйте функцию DCount в модуле для возвращения из таблицы «Заказы» (Orders) количества записей, которые относятся к заказам, размещенным в определенный день.

DCount(выражение, подмножество, [условия_отбора])

Функция DCount имеет следующие аргументы.

Аргумент

Описание

выражение

Выражение, определяющее поле, для которого требуется посчитать количество записей. Это может быть строковое выражение, определяющее поле в таблице или запросе, или выражение, которое производит вычисление на основе сведений в этом поле. Аргумент выражение может содержать имя поля в таблице, элемент управления в форме, константу или функцию. Если аргумент выражение содержит функцию, она может быть встроенной или пользовательской функцией, но не может быть другой функцией по подмножеству или статистической функцией SQL

подмножество

Строковое выражение, определяющее набор записей, составляющих подмножество. Имя таблицы или имя запроса, для которых не нужен параметр

условия_отбора

Необязательное строковое выражение, используемое для ограничения диапазона данных, с которым работает функция DCount. Аргумент условия_отбора часто эквивалентен предложению WHERE в инструкции SQL без использования самого слова WHERE. Если аргумент условия_отбора опущен, функция DCount вычисляет выражение для всего подмножества. Поля, включенные в аргумент условия_отбора, должны также входить в подмножество; в противном случае функция DCount вернет значение Null

Замечания

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

Функция DCount используется в вычисляемом элементе управления, если требуется задать условия для ограничения диапазона данных, на основе которого выполняется функция. Например, чтобы вывести количество заказов, поставляемых в Калифорнию, задайте для свойства текстового поля ControlSource следующее выражение.

=DCount("[OrderID]", "Orders", "[ShipRegion] = 'CA'")

Чтобы просто посчитать количество записей в подмножестве без указания каких-либо ограничений, используйте функцию Count.

Совет

Функция Count оптимизирована для быстрого подсчета количества записей. В запросе используйте функцию Count вместо функции DCount, а также задайте необязательное условие, чтобы наложить любые ограничения на результат. Используйте функцию DCount, когда необходимо вычислить количество записей в подмножестве с помощью модуля, макроса или вычисляемого элемента управления.

Используйте функцию DCount, чтобы вычислить количество записей, содержащихся в определенном поле, которое находится вне источника записей, на основе которого построена форма или отчет. Например, можно отобразить количество заказов в таблице «Заказы» (Orders) в вычисляемом элементе управления, расположенном на форме, созданной на основе таблицы «Товары» (Products).

Функция DCount не учитывает записи, которые содержат значения Null в поле, связанном со значением аргумента выражение, если только аргумент выражение не содержит подстановочного знака «звездочка» (*). В противном случае функция DCount подсчитывает общее число записей, в том числе содержащих поля со значением Null. Следующий пример вычисляет количество записей в таблице «Заказы» (Orders).

intX = DCount("*", "Orders")

Если подмножество является таблицей с ключевым полем, можно подсчитать количество записей, связав агрумент выражение с ключевым полем, так как это поле никогда не содержит значение Null.

Если аргумент выражение указывает на несколько полей, разделите названия полей с помощью оператора слияния — амперсанда (&) или оператора сложения (+). Если для разделения полей используется амперсанд, функция DCount вернет количество записей, содержащих данные в любом из перечисленных полей. Если для разделения полей используется оператор сложения, функция DCount вернет количество записей, которые содержат данные во всех перечисленных полях. В следующем примере представлен результат использования каждого оператора в случае поля, которое содержит данные во всех записях (ShipName), и поля, которое не содержит данные (ShipRegion).

intW = DCount("[ShipName]", "Orders")

intX = DCount("[ShipRegion]", "Orders")

intY = DCount("[ShipName] + [ShipRegion]", "Orders")

intZ = DCount("[ShipName] & [ShipRegion]", "Orders")

Примечание. В качестве оператора слияния строк предпочтительно использовать амперсанд. Избегайте использования оператора сложения во всех случаях, кроме арифметических операций, пока не требуется специально передать в выражение значения Null.

Несохраненные изменения записей подмножества не включаются при использовании этой функции. Если функция DCount должна быть основана на измененных значениях, необходимо сначала сохранить изменения с помощью команды Сохранить запись в меню Записи, с помощью перемещения фокуса на другую запись или метода Update.