I ultimately need a list of "import" records that include "album" records which only have one "song" each.
This is what I'm using now:
select i.id, i.created_at 
from imports i 
where i.id in (
    select a.import_id 
    from albums a inner join songs s on a.id = s.album_id
    group by a.id having 1 = count(s.id)
);
The nested select (with the join) is blazing fast, but the external "in" clause is excruciatingly slow.
I tried to make the entire query a single (no nesting) join but ran into problems with the group/having clauses. The best I could do was a list of "import" records with dupes, which is not acceptable.
Is there a more elegant way to compose this query?