Skip to content

Commit c7dd75e

Browse files
Docs: add Database section to built-in-functions.md and nuances to known-limitations.md
- Add ### Database section with all 12 D-functions (DAVERAGE, DCOUNT, DCOUNTA, DGET, DMAX, DMIN, DPRODUCT, DSTDEV, DSTDEVP, DSUM, DVAR, DVARP) to built-in-functions.md in alphabetical order between Date and Engineering - Add Database to TOC and remove "database" from "yet to be supported" intro - Add nuance notes for DGET (#VALUE!/#NUM! error semantics) and DMAX/DMIN/DPRODUCT (return 0 when no records match) Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1 parent 2e2ecec commit c7dd75e

2 files changed

Lines changed: 21 additions & 2 deletions

File tree

docs/guide/built-in-functions.md

Lines changed: 19 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -28,6 +28,7 @@ The latest version of HyperFormula has an extensive collection of
2828
**{{ $page.functionsCount }}** functions grouped into categories:
2929

3030
- [Array manipulation](#array-manipulation)
31+
- [Database](#database)
3132
- [Date and time](#date-and-time)
3233
- [Engineering](#engineering)
3334
- [Information](#information)
@@ -40,8 +41,7 @@ The latest version of HyperFormula has an extensive collection of
4041
- [Statistical](#statistical)
4142
- [Text](#text)
4243

43-
_Some categories such as compatibility, cube, and database are yet to be
44-
supported._
44+
_Some categories such as compatibility and cube are yet to be supported._
4545

4646
::: tip
4747
You can modify the built-in functions or create your own, by adding a [custom function](custom-functions).
@@ -91,6 +91,23 @@ Total number of functions: **{{ $page.functionsCount }}**
9191
| YEAR | Returns the year as a number according to the internal calculation rules. | YEAR(Number) |
9292
| YEARFRAC | Computes the difference between two date values, in fraction of years. | YEARFRAC(Date2, Date1[, Format]) |
9393

94+
### Database
95+
96+
| Function ID | Description | Syntax |
97+
|:------------|:----------------------------------------------------------------------------------------------------------------|:----------------------------------|
98+
| DAVERAGE | Returns the average of all values in a database field that match the given criteria. | DAVERAGE(Database, Field, Criteria) |
99+
| DCOUNT | Counts the cells containing numbers in a database field that match the given criteria. | DCOUNT(Database, Field, Criteria) |
100+
| DCOUNTA | Counts the non-empty cells in a database field that match the given criteria. | DCOUNTA(Database, Field, Criteria) |
101+
| DGET | Returns the single value from a database field that matches the given criteria. Returns #VALUE! if no records match, and #NUM! if more than one record matches. | DGET(Database, Field, Criteria) |
102+
| DMAX | Returns the maximum value in a database field that matches the given criteria. | DMAX(Database, Field, Criteria) |
103+
| DMIN | Returns the minimum value in a database field that matches the given criteria. | DMIN(Database, Field, Criteria) |
104+
| DPRODUCT | Returns the product of all values in a database field that match the given criteria. | DPRODUCT(Database, Field, Criteria) |
105+
| DSTDEV | Returns the sample standard deviation of all values in a database field that match the given criteria. | DSTDEV(Database, Field, Criteria) |
106+
| DSTDEVP | Returns the population standard deviation of all values in a database field that match the given criteria. | DSTDEVP(Database, Field, Criteria) |
107+
| DSUM | Returns the sum of all values in a database field that match the given criteria. | DSUM(Database, Field, Criteria) |
108+
| DVAR | Returns the sample variance of all values in a database field that match the given criteria. | DVAR(Database, Field, Criteria) |
109+
| DVARP | Returns the population variance of all values in a database field that match the given criteria. | DVARP(Database, Field, Criteria) |
110+
94111
### Engineering
95112

96113
| Function ID | Description | Syntax |

docs/guide/known-limitations.md

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -38,3 +38,5 @@ you can't compare the arguments in a formula like this:
3838
* The INDEX function doesn't support returning whole rows or columns of the source range – it always returns the contents of a single cell.
3939
* The FILTER function accepts either single rows of equal width or single columns of equal height. In other words, all arrays passed to the FILTER function must have equal dimensions, and at least one of those dimensions must be 1.
4040
* Array-producing functions (e.g., SEQUENCE, FILTER) require their output dimensions to be determinable at parse time. Passing cell references or formulas as dimension arguments (e.g., `=SEQUENCE(A1)`) results in a `#VALUE!` error, because the output size cannot be resolved before evaluation.
41+
* DGET returns `#VALUE!` when no records match the criteria, and `#NUM!` when more than one record matches.
42+
* DMAX, DMIN, and DPRODUCT return `0` when no records match the criteria (consistent with Excel behavior).

0 commit comments

Comments
 (0)