# Column

<table data-card-size="large" data-view="cards"><thead><tr><th data-card-target data-type="content-ref"></th><th data-hidden></th><th data-hidden></th><th data-hidden></th><th data-hidden data-card-cover data-type="files"></th></tr></thead><tbody><tr><td><a href="/pages/Fp7IYM3hpnOOOno6DMLq#basic-column-chart">/pages/Fp7IYM3hpnOOOno6DMLq#basic-column-chart</a></td><td></td><td></td><td></td><td><a href="/files/WQgOpVgIlI8tPrFGt2dX">/files/WQgOpVgIlI8tPrFGt2dX</a></td></tr><tr><td><a href="/pages/Fp7IYM3hpnOOOno6DMLq#stacked-column">/pages/Fp7IYM3hpnOOOno6DMLq#stacked-column</a></td><td></td><td></td><td></td><td><a href="/files/QMG97LKgU1qjURax1soX">/files/QMG97LKgU1qjURax1soX</a></td></tr><tr><td><a href="/pages/Fp7IYM3hpnOOOno6DMLq#column-with-series-labels">/pages/Fp7IYM3hpnOOOno6DMLq#column-with-series-labels</a></td><td></td><td></td><td></td><td><a href="/files/pfwgbypTXCmmcmSA80Fq">/files/pfwgbypTXCmmcmSA80Fq</a></td></tr><tr><td><a href="/pages/Fp7IYM3hpnOOOno6DMLq#auto-grouped-column">/pages/Fp7IYM3hpnOOOno6DMLq#auto-grouped-column</a></td><td></td><td></td><td></td><td><a href="/files/7kXP3TVxWXL4Ip276OeW">/files/7kXP3TVxWXL4Ip276OeW</a></td></tr><tr><td><a href="/pages/Fp7IYM3hpnOOOno6DMLq#column-with-single-baseline">/pages/Fp7IYM3hpnOOOno6DMLq#column-with-single-baseline</a></td><td></td><td></td><td></td><td><a href="/files/gwKyBu3l6WXw4tYFqzrc">/files/gwKyBu3l6WXw4tYFqzrc</a></td></tr><tr><td><a href="/pages/Fp7IYM3hpnOOOno6DMLq#column-with-multiple-baselines-for-one-series">/pages/Fp7IYM3hpnOOOno6DMLq#column-with-multiple-baselines-for-one-series</a></td><td></td><td></td><td></td><td><a href="/files/hA04UBtxTjnjlOkhClf9">/files/hA04UBtxTjnjlOkhClf9</a></td></tr><tr><td><a href="/pages/Fp7IYM3hpnOOOno6DMLq#column-with-commented-out-directive">/pages/Fp7IYM3hpnOOOno6DMLq#column-with-commented-out-directive</a></td><td></td><td></td><td></td><td><a href="/files/UUG2PXV3T5C4ntjZbHyB">/files/UUG2PXV3T5C4ntjZbHyB</a></td></tr><tr><td><a href="/pages/Fp7IYM3hpnOOOno6DMLq#auto-column">/pages/Fp7IYM3hpnOOOno6DMLq#auto-column</a></td><td></td><td></td><td></td><td><a href="/files/9f1jftT3xHbKlJYGAsew">/files/9f1jftT3xHbKlJYGAsew</a></td></tr><tr><td><a href="/pages/Fp7IYM3hpnOOOno6DMLq#column-with-explicit-series">/pages/Fp7IYM3hpnOOOno6DMLq#column-with-explicit-series</a></td><td></td><td></td><td></td><td><a href="/files/xe7PeAvOJn1C3bhkUfYK">/files/xe7PeAvOJn1C3bhkUfYK</a></td></tr></tbody></table>

## Basic Column Chart

```sql
-- @chart: column
-- @title: Column - Basic Column Chart
-- @subtitle: An example column chart showing sales by month
-- @formats: currency
SELECT 
	TRUNC(date_closed, 'MONTH') as Month,
	sum(amount) as Sales
FROM sales
GROUP BY Month
ORDER BY Month ASC;
```

<figure><img src="/files/WQgOpVgIlI8tPrFGt2dX" alt=""><figcaption></figcaption></figure>

| MONTH                            | SALES     |
| -------------------------------- | --------- |
| January, 01 2017 00:00:00 +0000  | 2668855.0 |
| February, 01 2017 00:00:00 +0000 | 3951547.0 |
| March, 01 2017 00:00:00 +0000    | 4403443.0 |
| April, 01 2017 00:00:00 +0000    | 3079040.0 |
| May, 01 2017 00:00:00 +0000      | 2576305.0 |
| June, 01 2017 00:00:00 +0000     | 3100093.0 |

## Stacked Column

```sql
-- @chart: column
-- @title: Stacking - Example column chart with stacking
-- @groups: Month, Channel
-- @subtitle: An example column chart that has a single stack
-- @formats: currency
-- @series: Sales
-- @stacks: Channel
SELECT 
	TRUNC(date_closed, 'MONTH') as Month,
    Channel,
	sum(amount) as Sales
FROM sales
GROUP BY Month, Channel
ORDER BY Month ASC;
```

<figure><img src="/files/QMG97LKgU1qjURax1soX" alt=""><figcaption><p>An example of a stacked column chart</p></figcaption></figure>

| MONTH                            | CHANNEL  | SALES     |
| -------------------------------- | -------- | --------- |
| January, 01 2017 00:00:00 +0000  | coldcall | 174647.0  |
| January, 01 2017 00:00:00 +0000  | referral | 1310064.0 |
| January, 01 2017 00:00:00 +0000  | search   | 681444.0  |
| January, 01 2017 00:00:00 +0000  | event    | 502700.0  |
| February, 01 2017 00:00:00 +0000 | pr\_ad   | 509564.0  |
| February, 01 2017 00:00:00 +0000 | search   | 1109141.0 |
| February, 01 2017 00:00:00 +0000 | event    | 417651.0  |

## Column with Series Labels

```sql
-- @chart: column
-- @title: Series Labels - Label at Top of Series
-- @subtitle: An example column chart with a series label above the top
-- @formats: currency
-- @series-labels: top
SELECT 
	TRUNC(date_closed, 'MONTH') as Month,
	sum(amount) as Sales
FROM sales
-- Select just 1 year so that the labels are not too cluttered
WHERE year(date_closed) = 2017
GROUP BY Month
ORDER BY Month ASC;
```

<figure><img src="/files/pfwgbypTXCmmcmSA80Fq" alt=""><figcaption><p>An example column chart with series labels</p></figcaption></figure>

| MONTH                             | SALES     |
| --------------------------------- | --------- |
| January, 01 2017 00:00:00 +0000   | 2668855.0 |
| February, 01 2017 00:00:00 +0000  | 3951547.0 |
| March, 01 2017 00:00:00 +0000     | 4403443.0 |
| April, 01 2017 00:00:00 +0000     | 3079040.0 |
| May, 01 2017 00:00:00 +0000       | 2576305.0 |
| June, 01 2017 00:00:00 +0000      | 3100093.0 |
| July, 01 2017 00:00:00 +0000      | 3112476.0 |
| August, 01 2017 00:00:00 +0000    | 4980193.0 |
| September, 01 2017 00:00:00 +0000 | 4335105.0 |
| October, 01 2017 00:00:00 +0000   | 3552154.0 |
| November, 01 2017 00:00:00 +0000  | 3426988.0 |
| December, 01 2017 00:00:00 +0000  | 3761158.0 |

## Auto Grouped Column

When 1 string columns and 2 numeric columns exist

```sql
-- @title: Auto Grouped Column
-- @subtitle: Auto grouping columns when there is one category and two values
SELECT 
	Channel,
	SUM(
      CASE WHEN Sales.Status = 'Won' OR Sales.Status = 'Lost' THEN 1 ELSE 0 END
    ) as "Sales_Closed",
    SUM(
      CASE WHEN Sales.Status = 'Won' THEN 1 ELSE 0 END
    ) as "Sales_Won"
FROM sales
GROUP BY Channel;
```

<figure><img src="/files/7kXP3TVxWXL4Ip276OeW" alt=""><figcaption><p>An example of columns being automatically grouped</p></figcaption></figure>

| CHANNEL  | SALES\_CLOSED | SALES\_WON |
| -------- | ------------- | ---------- |
| coldcall | 206.0         | 37.0       |
| referral | 1069.0        | 243.0      |
| search   | 344.0         | 66.0       |
| event    | 427.0         | 112.0      |
| pr\_ad   | 110.0         | 21.0       |

## Column with Single Baseline

```sql
-- @chart: column
-- @title: Baselines - Single Baseline
-- @subtitle: An example column chart with a default average baseline
-- @baselines: Sales
-- @series: SALES
-- @formats: currency
SELECT 
	TRUNC(date_closed, 'MONTH') as Month,
	sum(amount) as Sales
FROM sales
GROUP BY Month
ORDER BY Month ASC;
```

<figure><img src="/files/gwKyBu3l6WXw4tYFqzrc" alt=""><figcaption><p>An example column chart wtih a baseline </p></figcaption></figure>

| MONTH                            | SALES     |
| -------------------------------- | --------- |
| January, 01 2017 00:00:00 +0000  | 2668855.0 |
| February, 01 2017 00:00:00 +0000 | 3951547.0 |
| March, 01 2017 00:00:00 +0000    | 4403443.0 |
| April, 01 2017 00:00:00 +0000    | 3079040.0 |
| May, 01 2017 00:00:00 +0000      | 2576305.0 |

## Column with Multiple Baselines for one Series

```sql
-- @chart: column
-- @title: Baselines - Multiple Baseline for one series
-- @subtitle: An example column chart showing sales by month
-- @formats: currency
-- @series: Sales
-- @baselines: Sales, Sales, Sales
-- @baseline-types: average, min, max
SELECT 
	TRUNC(date_closed, 'MONTH') as Month,
	sum(amount) as Sales
FROM sales
GROUP BY Month
ORDER BY Month ASC;
```

<figure><img src="/files/hA04UBtxTjnjlOkhClf9" alt=""><figcaption><p>An exmaple column chart with multiple baselines</p></figcaption></figure>

| MONTH                            | SALES     |
| -------------------------------- | --------- |
| January, 01 2017 00:00:00 +0000  | 2668855.0 |
| February, 01 2017 00:00:00 +0000 | 3951547.0 |
| March, 01 2017 00:00:00 +0000    | 4403443.0 |
| April, 01 2017 00:00:00 +0000    | 3079040.0 |
| May, 01 2017 00:00:00 +0000      | 2576305.0 |
| June, 01 2017 00:00:00 +0000     | 3100093.0 |
| July, 01 2017 00:00:00 +0000     | 3112476.0 |

## Column with Commented out Directive

```sql
-- @chart: column
-- @title: Directive Comments
-- @subtitle: An example of commenting out a directive
-- @formats: currency
-- @series: Sales
-- //@baselines: Sales
SELECT 
	TRUNC(date_closed, 'MONTH') as Month,
	sum(amount) as Sales
FROM sales
GROUP BY Month
ORDER BY Month ASC;
```

<figure><img src="/files/UUG2PXV3T5C4ntjZbHyB" alt=""><figcaption><p>An example chart with @baselines commented out</p></figcaption></figure>

| MONTH                            | SALES     |
| -------------------------------- | --------- |
| January, 01 2017 00:00:00 +0000  | 2668855.0 |
| February, 01 2017 00:00:00 +0000 | 3951547.0 |
| March, 01 2017 00:00:00 +0000    | 4403443.0 |
| April, 01 2017 00:00:00 +0000    | 3079040.0 |
| May, 01 2017 00:00:00 +0000      | 2576305.0 |
| June, 01 2017 00:00:00 +0000     | 3100093.0 |

## Auto Column

```sql
-- @title: Auto Column
-- @subtitle: An example of an auto selected column chart
SELECT 
Channel,
count(*) as Won_Sales
FROM Sales
WHERE Status = 'Won'
GROUP BY Channel;
```

<figure><img src="/files/9f1jftT3xHbKlJYGAsew" alt=""><figcaption><p>An example of an auto selected column chat</p></figcaption></figure>

| CHANNEL  | WON\_SALES |
| -------- | ---------- |
| search   | 66.0       |
| coldcall | 37.0       |
| event    | 112.0      |
| referral | 243.0      |
| pr\_ad   | 21.0       |

## Column with Explicit Series

There are multiple columns defined, but we are only picking a specieis series using the `@series` directive:

```sql
-- @chart: column
-- @title: Series - Basic chart
-- @subtitle: An example of explicitly defining the series
-- @series: Sales
-- @formats: currency
SELECT 
	TRUNC(date_closed, 'MONTH') as Month,
	sum(amount) as Sales,
    sum(Profit) as Profit
FROM sales
GROUP BY Month
ORDER BY Month ASC;
```

<figure><img src="/files/xe7PeAvOJn1C3bhkUfYK" alt=""><figcaption><p>An example column chart wtih more than one column but only a specific series defined</p></figcaption></figure>

| MONTH                            | SALES     | PROFIT    |
| -------------------------------- | --------- | --------- |
| January, 01 2017 00:00:00 +0000  | 2668855.0 | 801583.0  |
| February, 01 2017 00:00:00 +0000 | 3951547.0 | 1117761.0 |
| March, 01 2017 00:00:00 +0000    | 4403443.0 | 1224108.0 |
| April, 01 2017 00:00:00 +0000    | 3079040.0 | 862533.0  |
| May, 01 2017 00:00:00 +0000      | 2576305.0 | 631699.0  |
| June, 01 2017 00:00:00 +0000     | 3100093.0 | 870893.0  |
| July, 01 2017 00:00:00 +0000     | 3112476.0 | 871875.0  |

### Heading2


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.chartsql.com/charts/column.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
