-
Notifications
You must be signed in to change notification settings - Fork 0
Open
Description
Summary
Add ability to use sub-queries within the query builder — e.g. in WHERE, FROM, SELECT, and JOIN clauses.
Use Cases
WHERE id IN (SELECT id FROM ...)— correlated/uncorrelated sub-queriesFROM (SELECT ...) AS subquery— derived tablesSELECT (SELECT COUNT(*) FROM ...) AS total— scalar sub-queriesJOIN (SELECT ...) AS sub ON ...— sub-query joins
Proposed API (rough)
// WHERE IN sub-query
db.user.select(({ where, subQuery }) =>
where({ id: { in: subQuery('post', q => q.select(({ field }) => [field('authorId')])) } })
)
// Derived table / FROM sub-query
db.user.select(({ fromSubQuery }) =>
fromSubQuery('post', q => q.select(...), 'p')
)Notes
- Sub-queries should be typed — return type inferred from inner select
- Must support both correlated and uncorrelated forms
- Consider parameterized vs. inlined values for safety
Reactions are currently unavailable
Metadata
Metadata
Assignees
Labels
No labels