Documentation Index
Fetch the complete documentation index at: https://docs.ondb.ai/llms.txt
Use this file to discover all available pages before exploring further.
executeUnique
Find a single document by any field. Returns the latest version by timestamp.
const user = await client.queryBuilder()
.collection('users')
.whereField('email').equals('alice@example.com')
.executeUnique<User>();
if (user) {
console.log('Found user:', user.name);
} else {
console.log('User not found');
}
Return Value
Returns T | null - the document if found, or null if not found.
execute (Find Many)
Find multiple documents with filters and options.
const result = await client.queryBuilder()
.collection('users')
.whereField('active').isTrue()
.orderBy('createdAt', 'DESC')
.limit(10)
.offset(0)
.execute<User>();
console.log(`Found ${result.records.length} active users`);
QueryResponse
| Field | Type | Description |
|---|
records | T[] | Array of matching documents |
total | number | Total count of matching documents |
error | string | Error message if query failed |
count
Count documents matching a filter.
const count = await client.queryBuilder()
.collection('users')
.whereField('active').isTrue()
.count();
console.log(`Active users: ${count}`);
Examples
Find by ID
const user = await client.queryBuilder()
.collection('users')
.whereField('id').equals('user_123')
.executeUnique<User>();
// Page 1
const page1 = await client.queryBuilder()
.collection('posts')
.orderBy('createdAt', 'DESC')
.limit(10)
.offset(0)
.execute();
// Page 2
const page2 = await client.queryBuilder()
.collection('posts')
.orderBy('createdAt', 'DESC')
.limit(10)
.offset(10)
.execute();
Select Specific Fields
const users = await client.queryBuilder()
.collection('users')
.whereField('active').isTrue()
.selectFields(['id', 'name', 'email'])
.orderBy('createdAt', 'DESC')
.limit(50)
.execute();
Next Steps
Update
Update existing documents
Query Builder
Complex queries with operators