Ed Szczepanski-USA TODAY Sports

Aledmys Diaz drove in three runs, Shea Langeliers homered and the host Oakland Athletics spoiled the return of Kansas City Royals ace Zack Greinke with a 5-4 victory Tuesday night.

After scoring all their runs in the first three innings, the A's won a late battle of bullpens, which included Greinke, who hadn't pitched since Aug. 6 because of elbow soreness. The veteran right-hander fired four scoreless innings.

Each team had a pair of two-run uprisings in the first five innings, during which Oakland built its 5-4 advantage. The difference was a solo shot by Langeliers, his 13th home run of the season, in the second.

Diaz drove in three of Oakland's first four runs, one with a first-inning sacrifice fly and the other two with a double in the third. Brent Rooker added an RBI single to Oakland's two-run first.

The Royals countered with two-run singles by Kyle Isbel in the second and Salvador Perez in the fifth.

Activated from the injured list earlier in the day and pitching in relief for just the 43rd time in his 579-game career, Greinke took over with the Royals down 5-2 in the third. He kept the visitors in the game, yielding just two hits and no walks while striking out five to increase his career whiff total to 2,960.

Angel Zerpa (1-2) pitched the first three innings for the Royals, allowing all five A's runs, four earned, and four hits. He walked one and struck out four.

Hogan Harris served up all four Kansas City runs in 3 2/3 innings as a bulk-innings reliever after Dany Jimenez had thrown a 1-2-3 first. Harris allowed five hits and two walks while striking out five.

Spencer Patton (1-0), Kirby Snead and Trevor May followed Harris to the mound and shut out the Royals over the final 4 1/3 innings. Patton earned the win after getting five outs before May logged his 13th save with a quiet ninth.

Rooker, hero of Oakland's 6-4 win on Monday with a walk-off homer, had two hits for the A's, who moved within two losses of the Royals in their duel for the worst record in baseball.

Perez had two hits for Kansas City, which lost for the fourth time in five head-to-head meetings with the A's this season. Oakland will aim for a sweep of the three-game series on Wednesday afternoon.

More must-reads:

TODAY'S BEST
Nuggets teach Timberwolves it's never easy to knock out the champion
Panthers come from behind to take Game 4 vs. Bruins
Hawks win 2024 NBA Draft Lottery
Watch: Padres star passes father on all-time home runs list
Terrion Arnold honors his mother in a unique way
Brad Keselowski breaks 110-race winless streak at Darlington
Watch: Manchester United ties record, highlighting club's ineptitude
Celtics' Jrue Holiday praises overlooked aspect of Jayson Tatum's game
Arturs Silovs' 42 saves lead Canucks past Oilers in Game 3
Braves star leaves game early due to left side soreness
Pacers blow out Knicks on Mother’s Day, even series at 2-2
Hawks GM 'shocked' that his team won the NBA Draft Lottery
Prolific former Brewers, A's slugger announces retirement
Saints to sign veteran offensive lineman
Smother's Day: Pacers shut down Knicks in first half of Game 4
Flyers goaltender suspended from international play for three years
Pistons make wrong kind of history at NBA Draft Lottery
Watch: Pacers C Myles Turner makes absurd three-pointer in first quarter vs. Knicks
Giants place key outfielder on injured list
Broncos release former Super Bowl champion WR

Want more MLB news?

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