Функции за бази от данни
Този раздел представя функциите за работа с данни, организирани в записи – редове от клетки.
Не бъркайте тази категория функции с интегрираната система за бази от данни на LibreOffice. Базите от данни на LibreOffice и категорията функции за бази от данни в LibreOffice Calc не са свързани. |
Примерни данни:
В някои от примерите в описанията на функции ще бъдат използвани следните данни:
В областта A1:E10 са изброени децата, поканени на рождения ден на Иван. Във всеки запис е дадена следната информация: колоната A съдържа името, B – класа, следва възрастта в години, разстоянието до училището в метри и теглото в килограми.
A |
B |
C |
D |
E |
|
1 |
Име |
Клас |
Възраст |
Разстояние до училище |
Тегло |
2 |
Андрей |
3 |
9 |
150 |
40 |
3 |
Бистра |
4 |
10 |
1000 |
42 |
4 |
Веселин |
3 |
10 |
300 |
51 |
5 |
Георги |
5 |
11 |
1200 |
48 |
6 |
Даниела |
2 |
8 |
650 |
33 |
7 |
Емил |
2 |
7 |
300 |
42 |
8 |
Женя |
1 |
7 |
200 |
36 |
9 |
Здравко |
3 |
9 |
1200 |
44 |
10 |
Ирена |
2 |
8 |
1000 |
42 |
11 |
|||||
12 |
|||||
13 |
Име |
Клас |
Възраст |
Разстояние до училище |
Тегло |
14 |
>600 |
||||
15 |
|||||
16 |
DCOUNT |
5 |
Формулата в клетката B16 е =DCOUNT(A1:E10;D1;A13:E14)
Параметри на функция за бази от данни:
Следват дефинициите на параметри за всички функции за бази от данни:
БазаОтДанни е областта от клетки, съдържаща данните.
ПолеОтБД задава колоната, върху която действа функцията, след като се приложат критериите за търсене от първия параметър и бъдат избрани редовете с данни. То не е свързано със самия критерий за търсене. За параметъра ПолеОтБД можете да въведете обръщение към заглавна клетка или число, за да зададете колона от областта с данни, започвайки с 1. За да посочите колона чрез точното й заглавие, заградете го с кавички.
КритерииЗаТърсене е областта от клетки, съдържаща критерии за търсене. Ако напишете няколко критерия в един ред, те са свързани с „И“. Ако ги напишете на отделни редове, се свързват с „ИЛИ“. Празните клетки в областта с критерии се игнорират.
Изберете LibreOffice - PreferencesИнструменти - Настройки - LibreOffice Calc - Изчисляване за да определите как LibreOffice Calc търси идентични записи.
Вижте и уикистраницата, посветена на условното броене и сумиране (на английски език).
DAVERAGE
DAVERAGE връща средното аритметично на стойностите на всички клетки (полета) във всички редове (записи от БД), които съответстват на зададените критерии за търсене.
Синтаксис
DAVERAGE(БазаОтДанни; ПолеОтБД; КритерииЗаТърсене)
Пример
За да намерите средното тегло на всички деца на еднаква възраст в горния пример (превъртете нагоре), въведете следната формула в B16:
=DAVERAGE(A1:E10;"Тегло";A13:E14)
В ред 14, под „Възраст“, въведете едно след друго 7, 8, 9 и т.н. Ще се показват средните тегла на децата на съответната възраст.
DCOUNT
DCOUNT брои редовете (записите) в база от данни, които отговарят на зададените критерии и съдържат числови стойности в колоната ПолеОтБД.
Синтаксис
DCOUNT(БазаОтДанни; [ПолеОтБД]; КритерииЗаТърсене)
Ако аргументът ПолеОтБД е пропуснат, DCOUNT връща броя на всички записи, удовлетворяващи критериите. За параметъра ПолеОтБД можете да въведете обръщение към заглавна клетка или число, за да зададете колона от областта с данни, започвайки с 1. За да посочите колона чрез точното й заглавие, заградете го с кавички.
Пример
В горния пример (превъртете нагоре) искаме да знаем колко деца трябва да изминат повече от 600 метра до училище. Резултатът трябва да бъде в клетката B16. Поставете курсора в клетката B16 и въведете в нея формулата =DCOUNT(A1:E10;D1;A13:E14). Помощникът за функции ще ви улесни в посочването на областите.
БазаОтДанни е областта, която трябва да бъде обработена, включително заглавията, в случая – A1:E10. ПолеОтБД указва колоната за критериите за търсене, в случая – колоната с числовите стойности за разстояние. КритерииЗаТърсене е областта, в която можете да въведете параметрите за търсенето, в случая – A13:E14.
За да видите колко деца във втори клас са на възраст над 7 години, изтрийте записа „>600“ в клетката D14 и въведете 2 в клетката B14 под „Клас“ и >7 – в клетката C14 вдясно. Резултатът е 2 – две деца са във втори клас и на възраст над 7 години. Тъй като двата критерия са на един ред, те са свързани с логическо „И“.
DCOUNTA
DCOUNTA брои редовете (записите) в база от данни, които отговарят на дадени критерии за търсене и съдържат числови или буквено-цифрови стойности.
Синтаксис
DCOUNTA(БазаОтДанни; [ПолеОтБД]; КритерииЗаТърсене)
Ако аргументът ПолеОтБД е пропуснат, DCOUNTA връща броя на всички записи, удовлетворяващи критериите. За параметъра ПолеОтБД можете да въведете обръщение към заглавна клетка или число, за да зададете колона от областта с данни, започвайки с 1. За да посочите колона чрез точното й заглавие, заградете го с кавички.
Пример
В горния пример (превъртете нагоре) можете да намерите броя на децата, чието име започва с „Д“ или някоя от следващите букви. Редактирайте формулата в B16 и я променете на =DCOUNTA(A1:E10;"Име";A13:E14). Изтрийте старите критерии за търсене и въведете >=Д под „Име“ в полето A14. Резултатът е 5. Ако сега изтриете всички числови стойности за Женя в ред 8, резултатът се променя на 4. Ред 8 вече не се брои, тъй като не съдържа стойности. Името Женя е текст, а не числова стойност. Обърнете внимание, че параметърът ПолеОтБД трябва да сочи към колона, която може да съдържа стойности.
DGET
DGET връща съдържанието на посочената клетка в база от данни, която отговаря на зададените критерии за търсене. В случай на грешка функцията връща или #VALUE!, ако не е намерен ред, или Err502, ако е открита повече от една клетка.
Синтаксис
DGET(БазаОтДанни; ПолеОтБД; КритерииЗаТърсене)
Пример
В горния пример (превъртете нагоре) искаме да определим в кой клас е детето, чието име е въведено в клетката A14. Формулата е се въвежда в клетката B16 и леко се различава от предишните примери, тъй като за ПолеОтБД може да бъде въведена само една колона (едно поле на базата от данни). Въведете следващата формула:
=DGET(A1:E10;"Клас";A13:E14)
Въведете името Емил в A14 и ще видите резултата 2. Емил е във втори клас. Въведете "Възраст" вместо "Клас" и ще получите възрастта на Емил.
Можете също да въведете само 11 в клетката C14 и да изтриете останалите елементи в същия ред. Променете формулата в B16 както следва:
=DGET(A1:E10;"Име";A13:E14)
Вместо класа се изисква името. Отговорът се появява веднага: Георги е единственото дете на възраст 11 години.
DMAX
DMAX връща максималната стойност на клетка (поле) в базата от данни (всички записи), която отговаря на зададените критерии за търсене.
Синтаксис
DMAX(БазаОтДанни; ПолеОтБД; КритерииЗаТърсене)
Пример
За да намерите колко тежи най-тежкото дете от всеки клас в горния пример (превъртете нагоре), въведете следната формула в B16:
=DMAX(A1:E10;"Тегло";A13:E14)
Под „Клас“ въведете едно след друго 1, 2, 3 и т.н. След въвеждането на клас ще се показва теглото на най-тежкото дете в този клас.
DMIN
DMIN връща най-малката стойност на клетка (поле) в база от данни, която отговаря на зададените критерии за търсене.
Синтаксис
DMIN(БазаОтДанни; ПолеОтБД; КритерииЗаТърсене)
Пример
За да намерите най-късото разстояние до училище за децата от всеки клас в горния пример (превъртете нагоре), въведете следната формула в B16:
=DMIN(A1:E10;"Разстояние до училище";A13:E14)
В ред 14 под „Клас“ въведете едно след друго 1, 2, 3 и т.н. след всяка въведена стойност ще виждате най-късото разстояние до училище за съответния клас.
DPRODUCT
DPRODUCT умножава всички клетки в областта с данни, които отговарят на критериите за търсене.
Синтаксис
DPRODUCT(БазаОтДанни; ПолеОтБД; КритерииЗаТърсене)
Пример
В примера с тържеството за рождения ден (превъртете нагоре) няма практично приложение на тази функция.
DSTDEV
DSTDEV изчислява стандартното отклонение на базата на извадка, използвайки числата в колона на базата от данни, които отговарят на дадените условия. Записите се третират като извадка от данни. Това означава, че децата в примера са представителна извадка от всички деца. Имайте предвид, че не може да се извлече представителен резултат от извадка с размер по-малко от хиляда.
Синтаксис
DSTDEV(БазаОтДанни; ПолеОтБД; КритерииЗаТърсене)
Пример
За да намерите стандартното отклонение на теглата на всички деца на еднаква възраст в примера (превъртете нагоре), въведете следната формула в B16:
=DSTDEV(A1:E10;"Тегло";A13:E14)
В ред 14, под „Възраст“, въведете едно след друго 7, 8, 9 и т.н. Като резултат ще се показва стандартното отклонение на теглата на децата на съответната възраст.
DSTDEVP
DSTDEVP изчислява стандартното отклонение на популация на базата на клетките от област с данни, които съответстват на критериите за търсене. Записите от примера се третират като цялата популация.
Синтаксис
DSTDEVP(БазаОтДанни; ПолеОтБД; КритерииЗаТърсене)
Пример
За да намерите стандартното отклонение на теглата на всички деца на еднаква възраст, поканени на тържеството (превъртете нагоре), въведете следната формула в B16:
=DSTDEVP(A1:E10;"Тегло";A13:E14)
В ред 14, под „Възраст“, въведете едно след друго 7, 8, 9 и т.н. Ще се показва стандартното отклонение на теглата на всички включени в проверката деца на съответната възраст.
DSUM
DSUM връща сумата на всички клетки от колона в база от данни, чиито редове (записи) отговарят на зададените критерии за търсене.
Синтаксис
DSUM(БазаОтДанни; ПолеОтБД; КритерииЗаТърсене)
Пример
За да намерите сумарното разстояние до училище за всички поканени на тържеството деца (превъртете нагоре), които са във втори клас, въведете следната формула в B16:
=DSUM(A1:E10;"Разстояние до училище";A13:E14)
Въведете 2 в ред 14 под „Клас“. Ще видите сумата (1950) на разстоянията до училище за всички деца във втори клас.
DVAR
DVAR изчислява дисперсията на клетките в колона на базата от данни за всички записи, които отговарят на зададените критерии за търсене. Записите се третират като извадка от данни. От извадка с размер по-малко от хиляда не може да се извлече представителен резултат.
Синтаксис
DVAR(БазаОтДанни; ПолеОтБД; КритерииЗаТърсене)
Пример
За да намерите дисперсията на теглата на всички деца на еднаква възраст в примера (превъртете нагоре), въведете следната формула в B16:
=DVAR(A1:E10;"Тегло";A13:E14)
В ред 14, под „Възраст“, въведете едно след друго 7, 8, 9 и т.н. Като резултат ще видите дисперсията на теглата на децата на съответната възраст.
DVARP
DVARP изчислява дисперсията на всички стойности на клетки в колона на база от данни, които съответстват на зададените критерии за търсене. Записите от примера се третират като цялата популация.
Синтаксис
DVARP(БазаОтДанни; ПолеОтБД; КритерииЗаТърсене)
Пример
За да намерите дисперсията на теглата на всички деца на еднаква възраст, поканени на тържеството (превъртете нагоре), въведете следната формула в B16:
=DVARP(A1:E10;"Тегло";A13:E14)
В ред 14, под „Възраст“, въведете едно след друго 7, 8, 9 и т.н. Като резултат ще се показва дисперсията на теглата на всички поканени на тържеството деца на съответната възраст.