tracker-sql (1) - Linux Manuals

tracker-sql: Use SQL to query the Tracker databases.


tracker-sql - Use SQL to query the Tracker databases.


tracker sql -q <sql> | -f <file>


This command allows probing of the current database. When using commands like tracker sparql, the SPARQL used is translated into SQL before being run on the database. This allows direct use of the database using SQL avoiding the SPARQL engine entirely.

The caller can run a query two ways, either by providing a file with the query or by providing a string with the sql query.

The file argument can be either a local path or a URI. It also does not have to be an absolute path.


-f, --file=<file>
Use a file with SPARQL content to query. Don't forget to end all queries with a semicolon (;) and also to use quotes around table names. The quotes are important because most tables are named after ontology classes like "nfo:Document" and queries will fail without the quotes.
-q, --query=<sql>
Use a sql string to query the database with.


Show first 10 "nfo:Document" entries where the TOC is not NULL:
$ tracker sql -q 'SELECT * FROM "nfo:Document" WHERE "nfo:tableOfContents" NOT NULL LIMIT 10;'