> For the complete documentation index, see [llms.txt](https://docs.chartsql.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.chartsql.com/charts/column.md).

# 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
