---
slug: querying-data
title: Querying Data
section: Core Workflows
description: Query with SQL directly or ask in plain English and review generated SQL.
listed: false
---
# Querying Data

**OrcaSheets gives you two ways to query: write SQL directly, or ask in plain English and review the SQL that's generated. Use whichever fits the moment.**

## A good mental model

- **Natural language** for exploring and iterating quickly.
- **SQL** when you need precision, repeatability, or performance tuning.

## SQL queries

Use SQL when you already know what you want:

- **Start small**: validate columns and joins with a narrow query first.
- **Filter early**: narrow by time ranges, partitions, or key subsets before aggregating.
- **Aggregate before charting**: pre-roll data so Visualizations stay fast.

## Natural language queries

Use natural language when you are still exploring:

1. **Ask** a clear question. Include the timeframe and a precise metric definition.
2. **Review** the generated SQL before trusting the answer.
3. **Validate** with a simpler aggregate if the result looks surprising.
4. **Save** the result as a reusable Sheet or view.

## Joining across sources

If you connect multiple sources (for example, Postgres + Snowflake + CSV), you can Join them in a single analysis. Start by joining two sources and sanity-checking row counts before adding more.

## Related pages

- [AI Chat Interface](/docs/ai-chat-interface)
- [Joining Data](/docs/joining-data)
- [Filtering Data](/docs/filtering-data)
- [Connectors](/docs/connectors)
