Se você estiver usando o SQL Server, poderá usar a cláusula TOP. Se for algo diferente do SQL Server, você terá que ver se esse banco de dados oferece algo equivalente (muitos deles oferecem). Algo assim ...
Select * from Main m
left outer join
(select top 1 * from subtable s
where s.main_table_id = m.id) q
on q.main_table_id = m.id;
Nota:Isso é para mostrar a ideia geral. Eu não tive a chance de executá-lo, então pode haver algumas mudanças necessárias, mas o conceito está lá.