The hosts took an early lead in some style when Aaron Wilbraham struck a sensational shot from long-range.
But the Blues were impressive in the opening 45 minutes and Jamal Lowe deservedly ensured the scores would be level at the break.
It was not quite so strong after the interval, but Brett Pitman showed typical striking instincts to turn the game around on his 50th appearance for the club.
And Matt Clarke added a fine third goal to wrap the points up for the visitors in the closing stages of an enjoyable Spotland contest.
Kenny Jackett made two changes from the side that drew with Wycombe on home soil the previous week.
Pitman returned to skipper the team, while there was also a start for Jack Whatmough at the back, with Oli Hawkins and Christian Burgess dropping to the bench.
Pompey got off to the worst possible start by falling behind in the fourth minute – not that they could have done much to prevent it.
It was a phenomenal effort from Wilbraham, who hit a stunning strike on the half-volley from almost 30 yards that left Craig MacGillivray with no chance.
But it was the Blues largely on top for the remainder of the half and an ambitious over-head effort from Gareth Evans flew past the post.
Nathan Thompson almost grabbed an unlikely leveller after collecting a pass from Pitman and firing a rocket against the crossbar.
Ollie Rathbone then had another long-range attempt for the hosts, although this one thankfully flew wide.
But Pompey were level on 25 minutes, thanks to a well-worked goal involving all three of the forward line.
Pitman collected the ball from Ronan Curtis, swivelled and sent in a low centre for LOWE to slide into the net.
He might have had another after being picked out by Pitman, but a poor first touch allowed Joe Rafferty to clear the danger.
The trio linked up well again when the skipper flicked on Lowe’s cross and Curtis met it with a deft touch, but Josh Lillis got down to his right to save.
Pompey were looking to attack at every opportunity and there were some nervy moments for the Dale back-line.
But Lillis was not being over-worked and made relatively comfortable stops to deny both Curtis and Lowe.
The keeper then came tearing from his line in stoppage-time to stop Lowe reaching Pitman’s threaded pass after Curtis had nipped in to steal possession from a Rochdale throw.
It was the hosts that were first to threaten after the restart, but when MacGillivray parried Andy Cannon’s effort, Rathbone skied the loose ball over.
There was certainly some of the excitement from the first half missing, however, with both sides guilty of some misplaced passes.
Ian Henderson curled a shot wide for Rochdale, while a well-placed Ben Close headed clear Cannon’s dangerous cross.
Then – after Lowe had been booked for a foul – Rathbone came close to sneaking the free-kick inside MacGillivray’s near post.
There was not too much happening at the other end of the pitch, although an Evans set-piece was glanced wide by Tom Naylor.
But the Blues took the lead on 71 minutes when a low ball from Lee Brown was deftly turned home by PITMAN at the near post.
A substitution soon followed, with Ben Thompson coming on for Evans to shore up the Blues midfield.
But it was not the end of Pompey’s attacking intent and they were able to extend their advantage on 81 minutes.
Rochdale failed to properly deal with a corner and CLARKE showed he is not just a class act at the back.
The defender brought the ball under control, beat his man and angled home a fierce strike that arrowed into the net.
David Wheeler and Hawkins were both introduced from the bench late on, as the visitors comfortably saw out the final few moments.
Rochdale (4-2-3-1): Lillis; Rafferty, McNulty, Delaney, Hart (Cannon 45); Camps (Clough 77), Perkins; J.Williams (Andrew 50), Rathbone, Henderson (c); Wilbraham
Goals: Wilbraham 4
Subs not used: Norman, Morley, MJ Williams, Gillam
Pompey (4-2-3-1): MacGillivray; N.Thompson, Whatmough, Clarke, Brown; Close, Naylor; Lowe, Evans (B.Thompson 76), Curtis (Wheeler 89); Pitman (c) (Hawkins 90+2)
Goals: Lowe 25, Pitman 71, Clarke 81
Subs not used: McGee, Burgess, Haunstrup, Mason
Referee: John Busby
Attendance: 3,796 (966 Pompey fans)