SAN FRANCISCO (AP) -- Brandon Crawford saved the day twice with late-inning offensive heroics. He never got a third chance, resting in the on-deck circle when the final out was recorded.
Pinch hitter Will Nieves delivered a sacrifice fly in the 10th inning to lift the Arizona Diamondbacks to a 3-2 victory over the San Francisco Giants on Wednesday.
Crawford broke up a pitcher's duel between Arizona's Ian Kennedy and Giants' Madison Bumgarner when he doubled home the first run of the game in the seventh.
After the Diamondbacks responded with runs in the eighth and ninth, Crawford hit a one-out home run in the bottom of the ninth to keep the Giants' hopes alive.
"It's always a good feeling to help the team win," Crawford said. "That's the goal. We all know we can come back. We've been doing that since last year. This time we just couldn't hold them."
Crawford's recent 2-for-17 slide whittled his batting average to .296. With three hits on the day, he jumped back up to .320.
"Here's a kid who keeps getting better and better," Giants manager Bruce Bochy said. "The confidence has grown with him. I like the way he's using the whole field and driving the ball. He's a talented kid who works hard and wants to get better."
Gerardo Parra and A.J. Pollock also drove in a run for the Diamondbacks, who beat the Giants in 11 innings on Tuesday night. Didi Gregorius had two doubles.
Pinch-hitter Eric Hinske was awarded a ground-rule double when Giants reliever Santiago Casilla, warming up in the bullpen, gloved his sharp liner down the third-base line. Parra then ran for Hinske and scored on Pollock's single to center.
"I don't know what Casilla was thinking," Bochy said. "I guess he thought the ball was foul."
Arizona led 2-1 before Crawford hit a tying homer off David Hernandez (1-0) with one out in the ninth.
"My swing doesn't change," Crawford said. "Before I might shorten up. Not now. My approach may change depending on the situation, but I'm still thinking up the middle."
Matt Reynolds got three outs for his second save in as many days. Reynolds, who had 22 holds and two blown saves before Tuesday night, has yet to allow a run in 11 1-3 innings.
"It's fun, the adrenaline gets going and the heart is pounding," Reynolds said. "Being here too, with the crowd they have and the atmosphere, it makes it a lot of fun."
Chad Gaudin (0-1) got the loss as San Francisco dropped consecutive home games after winning seven in a row at its waterfront ballpark.
"It's been crazy all these extra-inning games," Arizona outfielder Cody Ross said. "Tough games as well. But it feels good to win two out of three from these guys."
Kennedy was charged with a run and four hits in six-plus innings. He struck out four and walked two.
Bumgarner struck out seven in 7 1-3 innings, yielding one run and five hits. He retired 18 of 19 batters before Hinske's double.
"I thought I made a pretty decent pitch on the outside corner," Bumgarner said. "He may have been looking for it because he reached across the plate and wristed it out there."
NOTES: Giants C Guillermo Quiroz drew his first start of the year, with reigning NL MVP and batting champion Buster Posey resting for the afternoon contest after a long night game. ... Kennedy's 2.33 ERA against the Giants is third-best among active pitchers with a minimum of 10 starts behind Los Angeles Dodgers ace Clayton Kershaw (1.28) and Cincinnati's Mat Latos (2.19). ... RHP Tim Lincecum (2-0, 3.97) starts for the Giants in San Diego on Friday night. He's 11-5 against them in 23 starts. ... RHP Trevor Cahill (0-3, 3.60) goes for the Diamondbacks against the Colorado Rockies on Thursday night. He's 1-4 in seven starts against them. ... Bumgarner had an eye infection after not feeling well during his last outing. ... The teams combined to strand 20 runners, 10 apiece.
Copyright 2013 The Associated Press. All rights reserved. This material may not be published, broadcast, rewritten or redistributed.