Updated

Adrian Beltre hit three homers, including two in the fourth inning and Mitch Moreland hit a grand slam as the Texas Rangers trampled the Baltimore Orioles, 12-3, on Wednesday.

David Murphy had three hits, scored twice and knocked in a run for the AL West leaders, who have won five of their last seven.

Derek Holland (8-6) allowed three runs on five hits and struck out five over seven innings to snap a four-start winless stretch.

Nick Markakis went 3-for-4 and drove in all three runs for Baltimore, which lost for the second time in five games.

Tommy Hunter (4-8) was tagged for eight runs on eight hits while walking two over three-plus innings to lose his fourth consecutive decision.

Beltre hammered a solo homer to center field in the second. Baltimore countered with a run the following inning when Markakis' hit to left field plated Nate McLouth.

The Rangers broke the game open with a nine-run fourth inning. Josh Hamilton singled before Beltre ripped a two-run blast to left field.

Following back-to-back singles from Nelson Cruz and Michael Young, David Murphy doubled, scoring Cruz. Geovany Soto then walked to load the bases for Moreland, who launched a grand slam into the right field stands.

Later in the inning, Hamilton walked and Beltre hammered his second homer of the inning, a shot to center, to make it 10-1.

"It's definitely tough, you'd rather have a different outcome," Markakis said of the huge inning. "You have to tip your hat. That's a solid lineup, up and down. They've got a lot of firepower in that lineup."

Beltre became the 57th player in MLB history to homer twice in one inning, and the second this season. Angels designated hitter Kendrys Morales homered twice in the sixth inning of a 15-8 win over the Rangers on July 30.

"Finally, I got a good game offensively," Beltre said. "I've been struggling a couple of weeks, driving the ball. I hit the ball hard in the air."

Baltimore added two in the fifth. Lou Ford doubled and Robert Andino walked before Markakis' bases-clearing triple into the right-field corner.

The Rangers came back with one in the home half. Young and Murphy singled to open the inning before advancing on a wild pitch. Moreland then plated Young with a sacrifice fly.

Soto's RBI double in the seventh accounted for the final margin.

Game Notes

Rangers starter Yu Darvish was scratched from his scheduled start Thursday with tightness in his right quad. Roy Oswalt will start in Darvish's place ... Texas has won four straight series finales and five consecutive rubber games at home ... Baltimore catcher Matt Wieters left the game in the seventh with a right shoulder contusion. X-rays were negative and he was replaced by Tyler Teagarden.