PHOENIX -- The Arizona Diamondbacks spotted Oakland an early six-run lead, then chipped away and chipped away until one final swing by Ryan Roberts that had to feel as good as it did familiar.
Roberts' three-run homer with two outs in the ninth inning lifted the Diamondbacks to a 9-8 victory Friday night in the opener of the teams' three-game interleague series.
|More on Athletics-Diamondbacks|
|More MLB coverage|
"It's all the same, man," he said, "except for that was last year and this is this year. The feeling is just undescribable. It's awesome."
Roberts, who also doubled twice, lined a 2-1 fastball from Brian Fuentes into the seats in left field to give Arizona its only lead of the game.
"Oh my gosh, I was just trying to get a good pitch the whole at-bat," Roberts said. "I was just trying to get something to hit and not be the last out."
J.J. Putz (1-3) pitched a scoreless ninth to earn the Diamondbacks' third straight win and fifth in six games.
Arizona tied a franchise record by rallying to win from a six-run deficit. The Diamondbacks have done it eight times, twice this season. They won for the first time this season after trailing through eight innings.
Fuentes (2-2), who blew his third save in eight opportunities, walked Chris Young with two outs, then Aaron Hill singled to bring up Roberts.
"We just hung in there," Arizona manager Kirk Gibson said. "We used virtually our whole team tonight, and for Rhino [Roberts] to have that quality at-bat. But you've got to think about the guys who got on in front of him, down to our last out. That's why we try to push them to think about each other."
Oakland's Seth Smith had three hits, an RBI and a spectacular catch to rob Hill of a home run.
"That is a tough one to lose," A's manager Bob Melvin said. "We swung the bats well, we made unbelievable plays."
Fuentes said he was "struggling to keep the ball in the strike zone."
"I lost my tempo or something towards the end," he said, "and couldn't locate my fastball, so I fell behind quite a bit. They are a good team. I didn't expect them to roll over in the second inning when we scored six runs."
Paul Goldschmidt and Jason Kubel also homered for the Diamondbacks. Kubel finished with three RBI.
Oakland chased Daniel Hudson while scoring six runs in the second inning, but the Diamondbacks scored three times in the bottom half, two on Kubel's booming home run onto the concourse in right-center.
Goldschmidt's shot just inside the left-field foul pole made it 6-4 in the fifth. It was his eighth of the season.
Each team scored two runs in the sixth. Smith connected against ex-Oakland left-hander Craig Breslow, and Kubel doubled in Willie Bloomquist before scoring on Justin Upton's single.
Upton, back in the lineup after being benched for two games, went 2 for 4. Goldschmidt, who also singled, extended his hitting streak to 15 games.
Hudson was tagged for six runs and eight hits in 1 2/3 innings in his third start since returning from the disabled list after being sidelined with a right shoulder impingement.
Tommy Milone had a two-run single off Hudson for the first hit by an Oakland pitcher in 27 at-bats, dating to June 19, 2010, when Ben Sheets singled at St. Louis.
Brandon Inge led off the A's second with a single, then advanced to third on Kurt Suzuki's one-out single. In a 10-pitch at bat, Cliff Pennington doubled in a run to leave runners at second and third with one out.
That brought up Milone, who slapped a single to left to make it 3-0. Coco Crisp added a two-out RBI double, Josh Reddick singled in a run and Inge had a run-scoring single in the second.
Oakland's 16 hits tied a season high for an Arizona opponent. ... Hill also had two long outs to the fence in right. ... Milone's two-run single gave Oakland pitchers nine RBI since interleague play began in 1997. ... The Diamondbacks activated 1B Lyle Overbay from paternity leave and optioned OF A.J. Pollock to Triple-A Reno. Overbay's wife, Sarah, gave birth to a girl, Audrey Lynn, on Tuesday. ... Saturday night's matchup features pitchers who were traded for each other in the offseason, Jarrod Parker (2-2, 2.40 ERA) for the Athletics and Trevor Cahill (3-5, 3.45) for Arizona.