SAN FRANCISCO - The Arizona Diamondbacks are determined to do a lot of things better in the second half. They realize they have no choice if they're going to stay in first place in the NL West.
On Sunday, they got a start at finding a groove again.
Paul Goldschmidt hit a sacrifice fly and a double against All-Star Madison Bumgarner, Cody Ross added a late two-run single, and the first-place D-backs held off the San Francisco Giants for a 3-1 win to avoid a three-game sweep.
"It wasn't a very good game on our part at all," Ross said. "We made some mental mistakes. We're a better ballclub than that, but we overcame that. This isn't the short road trip we wanted."
The D-backs snapped a three-game losing streak with their first win of the second half, holding onto a half-game lead over the Dodgers.
Randall Delgado (2-3) won in his first career start at AT&T Park, and Goldschmidt's first-inning sac fly got things going against the inconsistent defending World Series champions. Arizona shortstop Cliff Pennington threw out Buster Posey at the plate in the sixth on a pretty relay throw, and third-base coach Tim Flannery claimed responsibility for the loss for sending the reigning NL MVP.
"I feel terrible and responsible for not getting Bum the win," Flannery said. "With nobody out, that can't happen."
A day after stranding 13 baserunners and going 2 for 12 with runners in scoring position, the D-backs did just enough against Bumgarner in the 10-game winner's first outing after the All-Star break.
Ross singled in the eighth as Arizona won for JUST the fourth time in 16 road games.
The D-backs bounced back in the series finale to avoid their second sweep of the season against the Giants and first in San Francisco's waterfront ballpark since May 10-12, 2011.
"We lost the first two games here. You want to stop that as soon as possible," Ross said. "Delgado was a stopper today."
Goldschmidt, 1 for 9 in the first two games of the series, doubled to start the fourth and drew walks in the sixth and eighth innings. Delgado allowed three hits, struck out two and walked four in 5 2/3 innings.
Brad Ziegler finished a crazy ninth that featured two errors for his fourth save in as many tries. The Giants scored on second baseman Aaron Hill's wild throw past first.
"We're in it for the long haul," D-backs manager Kirk Gibson said. "We understand there are going to be a lot of frustrations along the way and we need to play better. We're capable of playing better, cleaner baseball."
• Who: Cubs at D-backs
• When: 6:40 p.m.
• TV: FSAZ
• Radio: 1490-AM