Sri Lanka beat Bangladesh by 21 runs in the eighth match of the Asia Cup Cricket's fourth stage at Colombo on Saturday night.
Batting first, Sri Lanka scored 257 for the loss of nine wickets in allotted fifty overs.
In reply, Bangladesh were all out at 236 runs in 48.1 overs.