> ## Documentation Index
> Fetch the complete documentation index at: https://docs.cockroachlabs.com/llms.txt
> Use this file to discover all available pages before exploring further.

# CANCEL SESSION

The `CANCEL SESSION` [statement](/docs/stable/sql-statements.md) lets you stop long-running sessions. `CANCEL SESSION` will attempt to cancel the currently active query and end the session.

## Required privileges

To view and cancel a session, the user must be a member of the `admin` role or must have the `VIEWACTIVITY` [system privilege](/docs/stable/security-reference/authorization.md#supported-privileges) (or the legacy [`VIEWACTIVITY`](/docs/stable/create-user#create-a-user-that-can-see-and-cancel-non-admin-queries-and-sessions) [role option](/docs/stable/security-reference/authorization.md)) and the `CANCELQUERY` [system privilege](/docs/stable/security-reference/authorization.md#supported-privileges) (or the legacy [`CANCELQUERY`](/docs/stable/create-user#create-a-user-that-can-see-and-cancel-non-admin-queries-and-sessions) [role option](/docs/stable/security-reference/authorization.md)) defined. Non-admin users cannot cancel admin users' sessions.

## Synopsis

![cancel\_session syntax diagram](https://mintcdn.com/cockroachlabs/VQ_w3c6MHYdiS7Tn/images/sql-diagrams/common/cancel_session.svg?fit=max\&auto=format\&n=VQ_w3c6MHYdiS7Tn\&q=85\&s=09a86ed84731e95c923a8fa10e72d1d0)

## Parameters

| Parameter | Description |
| - | - |
| `session_id` | The ID of the session you want to cancel, which can be found with [`SHOW SESSIONS`](/docs/stable/show-sessions). `CANCEL SESSION` accepts a single session ID. If a subquery is used and returns multiple IDs, the `CANCEL SESSION` statement will fail. To cancel multiple sessions, use `CANCEL SESSIONS`. |
| `select_stmt` | A [selection query](/docs/stable/selection-queries.md) that returns `session_id`(s) to cancel. |

## Example

### Cancel a single session

In this example, we use the [`SHOW SESSIONS`](/docs/stable/show-sessions) statement to get the ID of a session and then pass the ID into the `CANCEL SESSION` statement:

```sql theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
> SHOW SESSIONS;
```

```
+---------+----------------------------------+-----------+...
| node_id |            session_id            | user_name |...
+---------+----------------------------------+-----------+...
|       1 | 1530c309b1d8d5f00000000000000001 | root      |...
+---------+----------------------------------+-----------+...
|       1 | 1530fe0e46d2692e0000000000000001 | maxroach  |...
+---------+----------------------------------+-----------+...
```

```sql theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
> CANCEL SESSION '1530fe0e46d2692e0000000000000001';
```

You can also cancel a session using a subquery that returns a single session ID:

```sql theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
> CANCEL SESSIONS (WITH x AS (SHOW SESSIONS) SELECT session_id FROM x
      WHERE user_name = 'root');
```

### Cancel multiple sessions

Use the [`SHOW SESSIONS`](/docs/stable/show-sessions) statement to view all active sessions:

```sql theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
> SHOW SESSIONS;
```

```
+---------+----------------------------------+-----------+...
| node_id |            session_id            | user_name |...
+---------+----------------------------------+-----------+...
|       1 | 1530c309b1d8d5f00000000000000001 | root      |...
+---------+----------------------------------+-----------+...
|       1 | 1530fe0e46d2692e0000000000000001 | maxroach  |...
+---------+----------------------------------+-----------+...
|       1 | 15310cc79671fc6a0000000000000001 | maxroach  |...
+---------+----------------------------------+-----------+...
```

To cancel multiple sessions, nest a [`SELECT` clause](/docs/stable/select-clause) that retrieves `session_id`(s) inside the `CANCEL SESSIONS` statement:

```sql theme={"theme":{"light":"catppuccin-mocha","dark":"catppuccin-mocha"}}
> CANCEL SESSIONS (WITH x AS (SHOW SESSIONS) SELECT session_id FROM x
      WHERE user_name = 'maxroach');
```

All sessions created by `maxroach` will be cancelled.

## See also

* [`SHOW SESSIONS`](/docs/stable/show-sessions)
* [`SET {session variable}`](/docs/stable/set-vars)
* [`SHOW {session variable}`](/docs/stable/show-vars)
* [SQL Statements](/docs/stable/sql-statements.md)
