Kevin Correia had one bad inning, and that was enough to doom the low-scoring Pittsburgh Pirates.
The Miami Marlins scored five times in the fourth inning, giving Josh Johnson plenty of cushion to beat the Pirates 6-2 on Tuesday night.
"He had his great stuff," Pittsburgh catcher Michael McKenry said. "If you give him a lead, it's kind of tough."
Any deficit is tough for the Pirates, who rank last in the majors in runs. They mustered only six hits against Johnson and two relievers.
Correia (1-4) lasted just 3 2-3 innings, his shortest outing this year, and gave up a season-high six runs.
"My command just wasn't real good," the right-hander said. "When I miss, it's a pretty good lineup, and they're going to take advantage of it."
Correia fell to 0-4 in his past five starts.
"It was just a tough night at the office for him," Pirates manager Clint Hurdle said. "Everything seemed to be running about the same velocity. The command wasn't sharp."
Three Pirates relievers combined to pitch 4 1-3 shutout innings. The bullpen hasn't allowed a run in the past five games.
But pitching hasn't been Pittsburgh's problem — hitting has. Clint Barmes is batting .160, Pedro Alvarez .217 and Alex Presley .220.
Johnson (1-3) gave up two runs over seven innings for his first victory since April 19, 2011.
"I feel like it has been about two years," the 2010 NL ERA leader said. "Wins have been tough at times to come by."
He missed the final 4½ months of last season because of right shoulder inflammation.
Miami's Omar Infante tied a career high with four hits, including a two-run single. Hanley Ramirez had three hits and two RBIs, and John Buck singled home the other two runs.
The Marlins concluded a 3-2 homestand and split the two-game series.
Johnson gave up a run in the first inning, but after the first two batters singled in the third, he retired 13 of the next 14 hitters before McKenry homered. He gave up six hits and struck out six.
"I'm very happy for JJ," manager Ozzie Guillen said. "He threw good. Hopefully with this game he gets back on track. He's our ace. Hopefully he starts pitching like he is."
Johnson was the Marlins' opening day starter this season but endured several rough outings. With the victory, he reduced his ERA to 5.36 and improved his career record to 49-26.
Edward Mujica and Randy Choate finished and lowered Miami's team ERA this month to 2.86.
The Marlins knocked out Correia when they scored five runs in the fourth to take a 6-1 lead. Buck drove in two runs with a bases-loaded single, Infante also had a two-run single and Ramirez doubled home a run.
Miami, which came into the game last in the majors in batting with runners in scoring position, went 4 for 12 in those situations. Pittsburgh went 1 for 6.
The Pirates scored in the first inning for the second straight night. Andrew McCutchen walked with two outs, advanced on a single by Alvarez and scored on Garrett Jones' single.
Ramirez tied the score with an RBI double in the bottom of the first. He later beat out a squibber that started in foul territory and slowly spun fair before pitcher Chris Resop scooped it up.
"I've never seen the pitcher let the ball go fair," Guillen said. "That's going to be in my book."
Notes: Before the game, the Marlins recalled OF Bryan Petersen from Triple-A New Orleans. ... Marlins RF Giancarlo Stanton robbed Jones when he made a running, leaping catch before slamming into the fence in the fourth inning. ... McCutchen went 1 for 3 and is batting .441 this month. ... Correia has an ERA of 8.39 in six starts against the Marlins. ... Miami's Emilio Bonifacio stole a base and is 19 for 19 to lead the majors. ... Marlins 1B Gaby Sanchez, batting .198, was given the night off. ... Attendance was a palindromic 24,242.