Eric Chavez hit the first pitch he saw in the ninth inning for a run-scoring single, sending the Arizona Diamondbacks to another walk-off victory, 4-3 over the San Francisco Giants on Saturday night.
Arizona has had a knack for walking away with wins this season and pulled off another one against the Giants.
Willie Bloomquist opened the ninth with a single off Sandy Rosario (3-2) for his third hit and moved up on Adam Eaton's sacrifice bunt. After an intentional walk to Paul Goldschmidt, Chavez lined his single into left-center for his fifth career game-ending hit, sending the Diamondbacks rushing out of their dugout to greet him.
Brad Ziegler (8-1) worked a perfect ninth to set up Arizona's 12th walk-off victory this season and 29th comeback win.
Gregor Blanco hit a solo homer and Hunter Pence had three hits for the Giants.
San Francisco starter Ryan Vogelsong had been sharp since coming off the disabled list for a broken right hand, going 3-1 with a 2.55 ERA.
But the right-hander has struggled his second time through the order all season and Saturday was no different.
Vogelsong escaped a bases-loaded jam in the third inning, but Arizona opened the fourth with three straight hits, the last a run-scoring single by Miguel Montero. Gerardo Parra followed with a sacrifice fly and Bloomquist made it 3-0 with a run-scoring single.
Opponents are hitting .349 against Vogelsong the second time through the order after the Diamondbacks went 5 for 6 with a walk and two sacrifices.
He allowed three runs and nine hits in six innings.
Arizona starter Trevor Cahill escaped a bases-loaded jam in the first by getting Pablo Sandoval to fly out. Cahill was helped by double plays in the fourth and fifth.
He seemed to tire by the seventh inning, when Blanco hit his third pitch out to right for a homer and Marco Scutaro chased him with a run-scoring triple. Buster Posey tied the game at 3 later in the inning with a run-scoring single off Josh Collmenter.
Cahill yielded three runs and nine hits in 6 1-3 innings.
NOTES: Vogelsong singled in the fifth for his second hit in 24 at-bats this season. ... Arizona's Martin Prado is hitting .364 since the All-Star break after going 3 for 4. ... Giants CF Angel Pagan saved a run in the seventh with a diving catch on Aaron Hill's liner. ... Arizona LHP Patrick Corbin will pitch the series finale Sunday after allowing eight earned runs in 5 1-3 innings against Philadelphia in his last start. ... RHP Yusmeiro Petit will make his second start for the Giants on Sunday. He earned his first victory in the majors since 2009 by allowing two runs over six innings against Colorado in his first start this season.