diff --git a/docs/en/guides/10-deploy/index.md b/docs/en/guides/10-deploy/index.md index 69d716d498..2513887555 100644 --- a/docs/en/guides/10-deploy/index.md +++ b/docs/en/guides/10-deploy/index.md @@ -1,12 +1,13 @@ --- title: Self-Hosted Databend --- + import IndexOverviewList from '@site/src/components/IndexOverviewList'; -These guides provide detailed instructions for deploying and upgrading Databend, catering to both the [Databend Community Edition](../00-overview/00-editions/00-dce/index.md) and [Databend Enterprise Edition](../00-overview/00-editions/01-dee/index.md). +These guides provide detailed instructions for deploying and upgrading Databend, catering to both the [Databend Community Edition](../00-overview/00-editions/00-dce.md) and [Databend Enterprise Edition](../00-overview/00-editions/01-dee/index.md). :::tip try out databend cloud Say goodbye to deployment and upgrade hassles – Databend Cloud manages these intricacies for you, freeing up your focus for what truly matters. Ready to experience the ease? [Sign up here](https://www.databend.com/apply/?r=doc-card). ::: - \ No newline at end of file + diff --git a/docs/en/sql-reference/20-sql-functions/07-aggregate-functions/aggregate-histogram.md b/docs/en/sql-reference/20-sql-functions/07-aggregate-functions/aggregate-histogram.md index c91965d23e..8924247e9c 100644 --- a/docs/en/sql-reference/20-sql-functions/07-aggregate-functions/aggregate-histogram.md +++ b/docs/en/sql-reference/20-sql-functions/07-aggregate-functions/aggregate-histogram.md @@ -5,43 +5,37 @@ import FunctionDescription from '@site/src/components/FunctionDescription'; -Computes the distribution of the data. It uses an "equal height" bucketing strategy to generate the histogram. The result of the function returns an empty or Json string. +Generates a data distribution histogram using an "equal height" bucketing strategy. ## Syntax ```sql HISTOGRAM() -HISTOGRAM( [, max_num_buckets]) -``` - -`max_num_buckets` means the maximum number of buckets that can be used, by default it is 128. -For example: -```sql -select histogram(c_id) from histagg; -┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ -│ histogram(c_id) │ -│ Nullable(String) │ -├───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ -│ [{"lower":"1","upper":"1","ndv":1,"count":6,"pre_sum":0},{"lower":"2","upper":"2","ndv":1,"count":6,"pre_sum":6}] │ -└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ +-- The following two forms are equivalent: +HISTOGRAM()() +HISTOGRAM( [, ]) ``` -::: - -## Arguments -| Arguments | Description | -|-------------------|--------------------------------------------------------------------------------------------| -| `` | The data type of `` should be sortable. | -| `max_num_buckets` | Optional constant positive integer, the maximum number of buckets that can be used. | +| Parameter | Description | +|-------------------|-------------------------------------------------------------------------------------| +| `expr` | The data type of `expr` should be sortable. | +| `max_num_buckets` | Optional positive integer specifying the maximum number of buckets. Default is 128. | ## Return Type -the Nullable String type +Returns either an empty string or a JSON object with the following structure: -## Example +- **buckets**: List of buckets with detailed information: + - **lower**: Lower bound of the bucket. + - **upper**: Upper bound of the bucket. + - **count**: Number of elements in the bucket. + - **pre_sum**: Cumulative count of elements up to the current bucket. + - **ndv**: Number of distinct values in the bucket. -**Create a Table and Insert Sample Data** +## Examples + +This example shows how the HISTOGRAM function analyzes the distribution of `c_int` values in the `histagg` table, returning bucket boundaries, distinct value counts, element counts, and cumulative counts: ```sql CREATE TABLE histagg ( @@ -58,24 +52,17 @@ INSERT INTO histagg VALUES (2, 21, 22, 23), (2, 31, 32, 33), (2, 10, 20, 30); -``` -**Query Demo 1** -```sql SELECT HISTOGRAM(c_int) FROM histagg; -``` -**Result** -```sql ┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ │ histogram(c_int) │ -│ Nullable(String) │ ├───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ │ [{"lower":"13","upper":"13","ndv":1,"count":1,"pre_sum":0},{"lower":"23","upper":"23","ndv":1,"count":1,"pre_sum":1},{"lower":"30","upper":"30","ndv":1,"count":2,"pre_sum":2},{"lower":"33","upper":"33","ndv":1,"count":2,"pre_sum":4}] │ └───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ ``` -Query result description: +The result is returned as a JSON array: ```json [ @@ -110,11 +97,37 @@ Query result description: ] ``` -Fields description: +This example shows how `HISTOGRAM(2)` groups c_int values into two buckets: -- buckets:All buckets - - lower:Upper bound of the bucket - - upper:Lower bound of the bucket - - count:The number of elements contained in the bucket - - pre_sum:The total number of elements in the front bucket - - ndv:The number of distinct values in the bucket \ No newline at end of file +```sql +SELECT HISTOGRAM(2)(c_int) FROM histagg; +-- Or +SELECT HISTOGRAM(c_int, 2) FROM histagg; + +┌───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┐ +│ histogram(2)(c_int) │ +├───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┤ +│ [{"lower":"13","upper":"30","ndv":3,"count":4,"pre_sum":0},{"lower":"33","upper":"33","ndv":1,"count":2,"pre_sum":4}] │ +└───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────┘ +``` + +The result is returned as a JSON array: + +```json +[ + { + "lower": "13", + "upper": "30", + "ndv": 3, + "count": 4, + "pre_sum": 0 + }, + { + "lower": "33", + "upper": "33", + "ndv": 1, + "count": 2, + "pre_sum": 4 + } +] +``` \ No newline at end of file diff --git a/src/components/DocsOverview/index.tsx b/src/components/DocsOverview/index.tsx index 55e3acf143..9aab391fd2 100644 --- a/src/components/DocsOverview/index.tsx +++ b/src/components/DocsOverview/index.tsx @@ -52,7 +52,7 @@ const colLayout3 = { xl: 8, xxl: 8, lg: 8, md: 8, sm: 12, xs: 24 }; const DocsOverview: FC = (): ReactElement => { const { siteConfig: { - customFields: { homeLink }, + customFields: { homeLink, isChina }, }, } = useDocusaurusContext(); return ( @@ -163,7 +163,13 @@ const DocsOverview: FC = (): ReactElement => {
{$t("Topics you might find useful:")}
  • - + {$t("Downloading Databend")}