PITTSBURGH — Paul Goldschmidt sure likes hitting in Pittsburgh.

Goldschmidt homered in his career-high fourth straight game, powering the St. Louis Cardinals over the Pittsburgh Pirates 6-3 on Thursday. He drove in nine runs and had four of the Cardinals’ 12 home runs during a four-game sweep of the Pirates.

“He’s an impressive guy,” Cardinals manager Mike Shildt said. “We’re seeing what he’s capable of consistently. We’re not surprised.”

With St. Louis ahead 2-1 in the fourth, Goldschmidt drove a changeup from Joe Musgrove (7-9) for his 22nd home run. He has one homer in each of his past five games against Pittsburgh.

“We’ve been finding some holes,” Goldschmidt said. “We’ve been hitting extra-base hits.”

Goldy has homered in four straight games, a first in his MLB career. "This is crazy. … I don't know how to explain it." #TimeToFly Brought to you by your @MidAmericaChevy Dealers. pic.twitter.com/FrmvGwnJ0x — FOX Sports Midwest (@FSMidwest) July 25, 2019

Kolten Wong homered later in the fourth and Dexter Fowler hit a two-run drive for a 6-1 margin in the fifth as the Cardinals won for the 11th time in 14 games since the All-Star break, including their last five.

Pittsburgh was outscored 30-19 in the series and has lost 11 of 13.

“We haven’t played winning baseball,” Pirates manager Clint Hurdle said. “I know that’s an overstatement, but it’s a statement, and it’s true. We haven’t played winning baseball. We haven’t connected the dots.”

Miles Mikolas (7-10) gave up three runs and five hits in six innings.

“I felt good to have a couple games in a row getting into the sixth and close to the seventh,” Mikolas said. “Thought I had everything working today. Maybe not my best fastball, but I thought I had good control of the slider and the other off-speed stuff.”

Mikolas likes the way the Cards are playing heading into a big series with Houston: "To know we're kicking on all cylinders is awesome." #STLCards pic.twitter.com/AEZfVT7ReN — FOX Sports Midwest (@FSMidwest) July 25, 2019

Musgrove matched his season high by giving up six runs — five earned — and seven hits in five innings. He faulted his slider.

“I thought they were kind of able to eliminate that pitch,” he said. “I threw a lot of really good ones just right off the edge. I couldn’t get them to chase.”

José Martínez hit an RBI single in the first and scored on Paul DeJong’s sacrifice fly. Bryan Reynolds’ sacrifice fly cut the Cardinals’ lead to 2-1 in the third.

Right-hander Alex McRae, recalled from Triple-A Indianapolis, followed Musgrove and gave up one walk in 1 2/3 innings. To make room on the 25-man roster, right-hander Luis Escobar was optioned to Indianapolis.

Starling Marte extended his hit streak to six games with a double in the sixth that cut Pittsburgh’s deficit to 6-2, and later scored on a groundball from Colin Moran for the 6-3 final. While Marte has been consistent, Pirates first baseman Josh Bell continues to struggle.

Bell, who was 1 for 3 with one walk Thursday, has seven hits in 38 at-bats with two RBIs since the All-Star break. After hitting 27 home runs before the break, he has yet to homer since.

“I feel like I just have to focus on, I guess, being more selective for the time being,” Bell said. “Seeing the last series or so, how guys are attacking me, I’m just going to try to go from there and hunt my pitch, and try not to miss it. See if that helps me get back on the right track.”

TRAINER’S ROOM

Cardinals: INF Matt Carpenter, returning from a bruised right foot, was 0 for 4 with two strikeouts in six innings at third base on Wednesday night in his second injury rehabilitation game for Triple-A Memphis on Wednesday night.

UP NEXT

Cardinals: RHP Jack Flaherty (4-6), seeking his first win since May 14, starts Friday against Houston. He has given up two runs in 18 1/3 innings in his past three starts.

Pirates: RHP Dario Agrazal (2-0) starts Friday at the New York Mets. The 24-year-old rookie has allowed eight runs — seven earned — in 28 innings over five starts.