PITTSBURGH -- Sunday's game was the picture of teams going in opposite directions.
St. Louis has won a season-best five games in a row; the Pirates have lost a campaign-worst five straight.
"Early in the season we didn't figure it out, but right now we are rolling," said Yadier Molina, who was 3-for-4 with an RBI for the Cardinals. "We're playing good baseball. We're doing the little things - and we're pitching better. That's the key."
Holliday went 3-for-4 with two RBIs before leaving in the seventh for a pinch runner. The Cardinals pounded out 14 hits, with eight starters getting at least one and six players driving in at least one run.
The sweep was the first for the Cardinals (35-28) at PNC Park since August 2009. They finished a two-series road trip with a 5-1 mark and are a season-high seven games over .500.
The losing streak dropped the Pirates (32-31) to just a game over .500.
"They've got a great team; we respect them," Molina said. "We just tried to come here and play the game the right way and tried to win games, and obviously we haven't done this in a long time, a sweep. This is great; we played a great three games."
Mike Leake (5-4), who gave up a season-high 10 hits in a no-decision in his previous start, pitched to the minimum number of Pittsburgh batters through three innings and gave up three runs on six hits - all singles - through seven innings. He struck out six and walked none.
"You can't get mad about singles - especially groundball singles," Leake said. "It tells you something when you're getting that many groundballs, definitely."
Jonathan Niese (6-3), who was 3-0 over his previous five starts, gave up eight runs on 11 hits, including both homers, over 5 1/3 innings.
"He was in the (strike) zone, but a lot of those times the execution was lacking," Pittsburgh manager Clint Hurdle said. "A lot of balls got up a little bit, more so than normal.
"Overall the command was just kind of in and out. There wasn't a consistency to it."
Holliday, who had a three-run homer Saturday, cracked a solo homer to right field in the first for a 1-0 St. Louis lead.
"Holliday got us going and then we got a couple really big innings," Cardinals manager Mike Matheny said.
The Cardinals pushed the lead to 4-0 in the third on Holliday's two-RBI single, Stephen Piscotty's RBI double and Jhonny Peralta's RBI groundout.
Pittsburgh cut the deficit to 4-2 in the fourth when David Freese and Starling Marte hit back-to-back RBI singles.
St. Louis chased Niese in the sixth when it scored four times for an 8-2 edge before there was an out. Molina drove in two with a single, Brandon Moss drove in another with a single and Grichuk hit a solo homer, his eighth, to left.
"A couple innings there snowballed on me, and that was the difference," Niese said. "I thought this was one of the better days I've felt pitching, but that's how this game goes sometimes. Sometimes, you don't feel great and you have a great game; sometimes you feel great and don't have a good game. It's just one of those days."
The Pirates added a run in the seventh on Jordy Mercer's groundout RBI to make it 8-3.
After no days off since May 13, the Pirates were looking forward to a day away from the park on Monday to regroup.
"I think it would be against the law to play any more in a row," Hurdle said. "So, yeah, good timing."
NOTES: As of Sunday afternoon, Pittsburgh still had no conclusive medical update on RHP Gerrit Cole, who left Friday's game because of right triceps tightness. ... C Eric Kratz started for the Pirates, but C Chris Stewart was available off the bench. Stewart (left ankle) left Saturday's game. ... Pittsburgh 3B Jung Ho Kang was given the day off from the starting lineup. ... For the second game in a row, Cardinals 3B Matt Carpenter was not in the starting lineup. ... Both teams are off Monday. For the Pirates, it's the first day since May 13 they have not had a game (or two) scheduled. ... The game was the first of three Sunday ESPN appearances for Pittsburgh. ... St. Louis plays 12 of its final 15 June games against American League clubs. ... The Pirates held a moment of silence and flew their flags at half-staff in honor of the victims of the Orlando nightclub shooting that occurred early Sunday morning.