Varan Join the beta →
Varan › What is cross-source SQL

What is cross-source SQL?

Cross-source SQL is running one SQL query — including JOINs — across more than one data source at once: a PostgreSQL database, a MySQL database, a DuckDB file and your CSV or Excel files, all in the same statement.

Cross-source SQL in one line of work: a PostgreSQL table joined to two CSV files, live.

Why it exists

Real data is scattered. Orders live in PostgreSQL, the product catalog in MySQL, a segment list in a CSV someone emailed you. A normal SQL client connects to one database at a time, so a query in one connection can't see a table in another — let alone a file. Cross-source SQL removes that wall: point one engine at every source and write a normal query.

How it works

A cross-source engine registers each source as a table, reads only the rows a query needs, and computes the join in one place. With a local-first engine like DuckDB, that "one place" is your own machine, using read-only access — nothing is copied into a central database and nothing is written back.

SELECT c.name, s.tier, SUM(o.total) AS revenue
FROM   customers  c                     -- CSV
JOIN   pg__orders o ON o.customer_id = c.id   -- PostgreSQL
JOIN   segments   s ON s.customer_id = c.id   -- CSV
GROUP BY c.name, s.tier;

Cross-source SQL vs ETL

ETL copies and reshapes data into a warehouse before you can query it. It's the right tool for durable, governed reporting, but it's heavy to build, and the copy is stale the moment a source changes. Cross-source SQL queries the sources live with no copy step — ideal for exploration, one-off questions, and joining data that never shared a database.

Cross-source SQL vs federated queries

They're the same concept. Engines like Trino, Presto and Apache Drill run federated queries across many sources, but they're server systems you have to deploy and operate. A local-first tool brings the same capability to a desktop app: no cluster, no setup — you point it at your sources and query.

Where Varan fits

Varan is a desktop SQL workspace built on a local DuckDB engine. It runs cross-source SQL over PostgreSQL, MySQL, DuckDB and spreadsheet files, and adds automatic anomaly detection, column lineage and git-style rollback so you can trust and trace the result.

Run a cross-source query yourself

Free during the beta — macOS, Windows and Linux.

Request beta access →

Related