getTableName()
Returns the SQL table reference for a subquery, including its alias. Typically used when building custom JOIN clauses manually.
Signature:
public function getTableName(): string
Example
// Build a subquery
$sub = $db->subQuery('last_orders');
$sub->where('status', 'confirmed');
$sub->groupBy('user_id');
// Use getTableName() in a manual JOIN
$db->join($sub->getTableName(), 'last_orders.user_id = u.id', 'LEFT');
$db->get('test_users u');
Equivalent SQL:
SELECT ...
FROM test_users u
LEFT JOIN (SELECT ... GROUP BY user_id) AS last_orders ON last_orders.user_id = u.id
Use Cases
- JOINs with dynamically built subqueries
- Manual query composition with full control
- Readable and reusable alias management