Jeff Curry-USA TODAY Sports

Donovan Solano delivered a decisive two-run, pinch-hit single in the seventh inning as the visiting Minnesota Twins edged the St. Louis Cardinals 3-2 on Tuesday to snap their five-game losing streak.

Tyler O'Neill hit a solo home run for the Cardinals, who lost for the eighth time in their last 11 games.

Twins starter Pablo Lopez (6-6) allowed one run on four hits over six innings. He struck out five and did not issue a walk.

Emilio Pagan and Griffin Jax each worked a scoreless inning of relief. Jhoan Duran survived O'Neill's homer in the ninth to earn his 18th save.

Cardinals starting pitcher Miles Mikolas (6-7) allowed three runs (two earned) on six hits in seven innings. He struck out seven and walked one.

The Twins broke a scoreless tie in the fifth inning with an unearned run.

Ryan Jeffers hit a one-out double, moved to third base on Joey Gallo's lineout and scored when Michael A. Taylor reached base on shortstop Tommy Edman's throwing error.

A baserunning mishap cost the Cardinals in the bottom of the inning. With one out, Jordan Walker hit a ground ball to third baseman Jorge Polanco and raced to third after a wild throw.

But Walker was subsequently called out for missing first base on the play.

The Cardinals tied the game 1-1 in the sixth inning before another baserunning error proved costly.

Taylor Motter hit a leadoff single, took second on Lars Nootbaar's one-out single and scored on Nolan Arenado's two-out single. But Nootbaar got thrown out trying to reach third on the play.

The Twins moved ahead 3-1 in the seventh inning. Polanco hit a leadoff single and Matt Wallner hit a ground-rule double to set things up for Solano, who came through with the clutch hit.

Nootbaar and Paul Goldschmidt hit two-out singles in the eighth inning before Arenado flied out to strand both runners. O'Neill's ninth-inning homer cut St. Louis' deficit to 3-2, but Duran recorded a pair of strikeouts to end the game.

More must-reads:

TODAY'S BEST
Chris Finch throws shade at Nuggets star over Rudy Gobert’s fine
Astros starter ejected after foreign substance inspection
Cardinals head coach warns not to bet against Kyler Murray
Details emerge on Jason Kelce’s role at ESPN
Rangers defenseman wins Mark Messier Leadership Award
Ex-NFL head coach takes over as Arena Football League commish
Yankees young stud takes major step in return from injury
See top groupings for Rounds 1 and 2 at 2024 PGA Championship
Former Bruins winger dead at 75
Brewers lose team-leading home run hitter to injured list
Super Bowl-winning safety plans to retire after 2024 season
Canucks' Nikita Zadorov takes a shot at NHL over teammate's suspension
Sports radio star Doug Gottlieb to coach college hoops while staying on the air
NFL scores big win in legal battle with ex-Raiders head coach
Astros 3B breaks out of slump in contract year
Cardinals sign second-round CB
Micah Parsons makes history with new Bleacher Report deal
Celtics assistant named candidate for Lakers HC job
Rudy Gobert fined $75,000 for gesture in Game 4
Former Canadiens GM on Blue Jackets' radar

Want more sports news?

Join the hundreds of thousands of fans who start their day with Yardbarker's Morning Bark, the best newsletter in sports.