PHOENIX -- The Detroit Tigers raced out to a seven-run lead, thanks to a big hit by Austin Jackson.
They needed another one after Arizona rallied.
Of course Miguel Cabrera came through.
Jackson hit a three-run double fourth inning and Cabrera hit a three-run homer in the eighth after Arizona cut the lead to two, helping the Tigers wear out the Diamondbacks 11-5 in a slugfest on Wednesday.
"Jackson's hit was the big hit at the time because we hadn't done that in a while," Tigers manager Brad Ausmus said. "Of course, Miggy's home run opens up the game for us, gives us a little breathing room."
Detroit appeared to be cruising after roughing up Trevor Cahill (1-7) for seven runs in four innings.
Arizona clawed its way back against Anibal Sanchez (7-4), though, scoring three runs off him in the fifth and two more over the next two innings.
With Tigers clinging to a two-run lead with two on and no outs in the seventh inning, Joba Chamberlain replaced Sanchez and needed one pitch to escape a jam he created by Sanchez.
That set the stage for Cabrera in the eighth and the 2012 Triple Crown winner came through, fouling off a couple of pitches from Matt Stites before hitting his 15th home run off the foul pole in left.
"The hitters, they did their job," Sanchez said. "They give me enough runs to get the win."
Arizona tried to keep pace with the AL's best-hitting team, knocking out 13 hits while rallying from the big early deficit.
The Diamondbacks couldn't finish it off, unable to add on runs in the seventh inning or keep one of baseball's best hitters from leaving the yard.
Didi Gregorius had a home run and two RBI for Arizona.
"He is pretty impressive to watch," Diamondbacks manager Kirk Gibson said of Cabrera. "He is somebody everybody has to deal with, for sure."
Sanchez followed up a strong start against Kansas City with a shaky one against Cleveland, allowing four runs in six innings his last start.
The right-hander has been good on the road this season and was sharp early against the Diamondbacks with a big lead.
Parra had a run-scoring single in the sixth inning and David Peralta added another in the seventh to cut Detroit's lead to 7-5. Arizona had two on with no outs after that, but Sanchez got Aaron Hill to fly out and Chamberlain induced Paul Goldschmidt into an inning-ending double play on his lone pitch in the inning.
Sanchez allowed five runs on 11 hits and struck out four in 6 1/3 innings.
"His stuff is good, I just think when he's missed his spots, they've hit it," Ausmus said.
Cahill had a decent outing after being called up from the minors his last start, allowing three runs on four hits in five innings of a no-decision against the Chicago Cubs.
His second start didn't go so well.
Avila hit a two-run single off Cahill in the second inning and the Tigers poured it on in the fourth, scoring five runs with the help of an error by Hill at second base. Avila had a sacrifice fly for the only earned run in the inning and Jackson had the big hit, a three-run double that got past left fielder Mark Trumbo's diving attempt.
Cahill allowed seven runs -- three earned -- on eight hits to remain winless in six starts this season.
"Hitting is contagious and they got on a roll," Cahill said.
Arizona managed to rally, but Cabrera put the game out of reach with one big swing.
Tigers RF Torii Hunter was given a day off despite swinging a hot bat. He has hit .381 with five home runs, 12 runs and 20 RBI during the past 16 games. OF J.D. Martinez tweaked his quadriceps against Arizona on Tuesday and was held out of the lineup. ... Gregorius' home run was the 47th all-time to land in the Chase Field pool. ... The Diamondbacks have a day off before starting a three-game series at Philadelphia behind right-hander Wade Miley. Detroit starts a four-game series at the Los Angeles Dodgers on Thursday with right-hander Max Scherzer on the mound.