Veel vereenvoudigde en gecorrigeerde Carlos-oplossing (zijn oplossing zou de eerste 5 rijen opleveren, niet de laatste...):
SELECT tB1.idA, tB1.idB, tB1.textB
FROM tableB as tB1
JOIN tableB as tB2
ON tB1.idA = tB2.idA AND tB1.idB <= tB2.idB
GROUP BY tB1.idA, tB1.idB
HAVING COUNT(*) <= 5
In MySQL kunt u tB1.textB
. gebruiken zelfs als het is gegroepeerd per zoekopdracht, omdat je groepeert op idB in de eerste tabel, dus er is maar één waarde van tB1.textB
voor elke groep...