Keyfield

How to read Access queries without Microsoft Access

A saved query is often where the real logic of an Access database lives: which orders count as late, how a total is worked out, what gets deleted at month-end. You can read Access queries without Access itself, because every saved query is stored in the file as SQL.

Short answer

Access stores each saved query as SQL text inside the database. Open the file in Keyfield, go to the Queries tab and tap a query: you see its SQL, its type (select, crosstab, update and so on), and the tables it reads from, with a button to copy the SQL. Keyfield shows queries; it doesn’t run them.

Get Keyfield Opens .accdb and .mdb files. Viewing is free, with no account.

Where the queries are

In Access, you normally see a query in Design view: boxes for tables, lines between them, a grid of fields. That picture is drawn from SQL, and the SQL is what the file actually stores. Any tool that can read the database can show it, which is why you don’t need Access to find out what a query does.

In Keyfield, the Queries tab lists every saved query in the database with its type. Tap one to see the SQL, laid out as Access saved it, and a Reads from list of the tables it uses. Copy SQL puts it on the clipboard, which is handy for sending it to whoever maintains the database.

How to read the common kinds

Access SQL is close to standard SQL, with a few habits of its own. A typical select query looks like this (an example, not from a real file):

SELECT Orders.OrderID, Customers.Name, Orders.Total
FROM Customers INNER JOIN Orders
  ON Customers.CustomerID = Orders.CustomerID
WHERE Orders.OrderDate >= #2026-01-01# AND Orders.Paid = False
ORDER BY Orders.Total DESC;

Crosstab queries begin with TRANSFORM and end with PIVOT: they turn the values of one column into column headings, like a pivot table. Action queries change data instead of showing it: UPDATE, DELETE, INSERT INTO (an append query) and SELECT … INTO (a make-table query). Reading those tells you exactly what a month-end routine will change, which is worth knowing before anyone runs it.

Why a viewer doesn’t run them

Keyfield reads the SQL that Access saved; it doesn’t execute Access SQL, and it never changes the file, so an action query can’t do anything there by accident. If you need a select query’s answer on your phone, you can often get close with the table itself: the WHERE clause usually turns into one or two filters, and ORDER BY into a sort. Joins across tables and totals need Access, or the person who built the database.

What else is worth reading

The Relationships tab shows which tables join to which, one-to-many, and each table’s Fields tab lists every field with its type, named the way Access’s table designer names them. Together with the queries, that is usually enough to understand a database someone else built. If a query reads from a table marked LINKED, its data isn’t in this file: see what a linked table is.

See the SQL behind every saved query

Keyfield lists the saved queries, relationships and field types of any .accdb or .mdb it opens, free. Copy a query’s SQL and send it on.

Get it on Google Play