---
title: Simple and advanced modes
description: How the playground's two input modes differ, how to switch, and the one-line escape hatch.
sidebar:
order: 3
---
import Demo from '../../../components/Demo.astro';
The playground has two input modes. You can do everything a beginner needs
in **simple mode**, and reach for **advanced mode** when you want full SQL.
## Simple mode (the default)
Simple mode is a friendly, keyword-based command language designed for
learning. Commands read close to English:
```rdbms
create table authors with pk author_id(serial)
show data authors
```
Simple mode accepts these learning commands plus the app-level commands
(like `save`, `undo`, and `help`). If you type raw SQL here, the playground
gently points you at advanced mode instead of failing silently.
## Advanced mode (SQL)
Advanced mode accepts standard SQL — `SELECT`, `INSERT`, `CREATE TABLE`, and
more — alongside the same app-level commands:
```sql
select title, published from books where published >= 2000 order by published;
```
Switch modes with the `mode` command:
```rdbms
mode advanced
mode simple
```
The mode you leave a project in is remembered and restored the next time you
open it, so a project set up for SQL practice reopens in advanced mode.
## The one-line escape
When you are in simple mode and want to run a single SQL statement without
switching, prefix the line with a colon:
```rdbms
:select count(*) from books
```
That runs just this one line as SQL; you stay in simple mode afterwards.
## Seeing the SQL behind a command
Run a **simple-mode command while in advanced mode** and the playground prints
the equivalent SQL beneath it, tagged `Executing SQL:`. This is one of the most
useful ways the playground teaches: you write the friendly, readable command,
and immediately see the real SQL statement it stands for — the same statement
you could have typed yourself.
It turns every command into a small SQL lesson. Add a column the easy way and
watch the `ALTER TABLE` it maps to:
```rdbms
add column to books: title (text)
```
```
Executing SQL: ALTER TABLE books ADD COLUMN title text
```
The payoff grows with the command. A single `create m:n relationship` — the
one-line way to
[link two tables many-to-many](/reference/relationships/#many-to-many-relationships)
— expands to an entire junction table: two foreign-key columns, a compound
primary key, and two cascading foreign keys, all spelled out in the echo.
Because the echo is exactly what runs, it doubles as a recipe: read it, copy
it, tweak it, and run your own version in advanced mode.