SAN FRANCISCO -- As the Giants approached the halfway point of the season, manager Bruce Bochy said before the game that the offense hadn't been what he expected and he needed his big hitters to come through in the second half if San Francisco had any hope of salvaging the season.
Bochy had to like what he saw Friday night.
Slumping Buster Posey had three hits and two RBI, and Alex Dickerson homered and drove in two runs to lead the Giants to a 6-3 victory over the Arizona Diamondbacks in the final game of the first half of the season.
"I've said so many times, these good hitters, they find it," Bochy said. "If we do that, then things will look really good the second half. We need these important guys to come through for us. We saw what happened tonight when they do."
Posey had been a big part in the team's struggles offensively this season. He came into the game with just three homers, 18 RBI and a 15 at-bat hitless streak.
After flying out in his first trip to the plate, Posey hit an RBI double in the third inning against Merrill Kelly (7-8) and a run-scoring single in the fifth. Posey also singled in the seventh for his first three-hit game of the season.
"For the most part, I haven't felt great," Posey said. "Obviously that goes along with where my numbers are. The big thing is swinging at good pitches. But it you feel like you're not in a positon where you can get to certain pitches, you tend to chase a little more."
Dickerson had opened the scoring when he hit a drive over the right-field wall that bounced into McCovey Cove and also added an RBI single in the seventh. Dickerson was called up from the minors last week after being acquired earlier in the month in a minor league transaction with San Diego. He has seven extra-base hits and 12 RBI in eight games with the Giants.
Shaun Anderson (3-2) allowed two runs and seven hits in 5 2/3 innings to get the win. He has pitched at least five innings and allowed three or fewer runs in eight of his first nine career starts.
Arizona had a chance at a comeback in the ninth after Dyson's single made it 6-3 and brought Ketel Marte to the plate as the potential tying run. But Will Smith struck out Marte and David Peralta to end the game. Marte went 0-for-5 to snap his career-best streak of reaching base safely in 20 straight games.
"The theme tonight was we couldn't the hit we needed," manager Torey Lovullo said. "You have to execute and sometimes you do and tonight we didn't. Scoring a run or getting a scratch run here or there is crucial and in this park especially. Runs are at a premium especially on night like tonight where it's cold and windy. We couldn't capitalize at the right time."
Kelly allowed three runs and seven hits in five innings.
Diamondbacks: C Alex Avila (strained left calf) was activated from the injured list. Caleb Joseph had been optioned to Triple-A Reno after Thursday's game. Avila could start Saturday.
Giants: OF Steven Duggar will begin a rehab assignment from a lower back strain on Saturday at Triple-A Sacramento.
Posey appeared to have his first homer in San Francisco in more than a year in the third inning. But as soon as he rounded the bases, Lovullo came out of the dugout to challenge the call. The review showed the ball hit off the top of the brick wall, just below the green awning on the fence, and Posey was sent back to second with an RBI double. Posey's last long ball at home came against Miami on June 19, 2018.
RHP Zack Greinke (8-3, 3.08) takes a 5-0 career record in seven career starts in San Francisco into the game against Giants LHP Drew Pomeranz (2-8, 6.79). Pomeranz, who is coming off an 11-strikeout performance in a 2-0 loss to Colorado on Monday, is 0-4 with an 8.53 ERA in 10 career appearances against Arizona.
More AP MLB: https://apnews.com/tag/MLB and https://twitter.com/AP-Sports
Devers extends hit streak to 8, Red Sox beat Indians 5-1
Rafael Devers homered and singled, extending his robust hit streak to eight straight at-bats, and Xander Bogaerts connected twice to lead the Boston Red Sox to a 5-1 victory over the Cleveland Indians on Wednesday.
Pirates' Taillon to miss '20 season after TJ surgery
Pirates starting pitcher Jameson Taillon will miss the 2020 season after undergoing reconstructive surgery on his right elbow for a second time.
Sanchez, Yankees beat Orioles for 16th straight time, 6-5
Gary Sanchez hit a three-run homer and the New York Yankees beat the Baltimore Orioles for the 16th straight time this season, winning 6-5 Wednesday in their final meeting this year.
Arrieta likely to have season-ending procedure
Phillies pitcher Jake Arrieta said he "probably" will not pitch again this season if he has arthroscopic surgery for a bone spur in his right elbow. "This is what I have to do," he said.
Devers continues hot streak with homer
After going 6-for-6 on Tuesday night, Rafael Devers hits a solo home run in the 3rd inning.
Andrus gets 4 hits, Rangers beat Jays 7-3 to avoid sweep
Kolby Allard pitched 5 2/3 innings to win for the first time with Texas, Elvis Andrus had four hits and two RBI and the Rangers beat the Toronto Blue Jays 7-3 Wednesday to avoid a three-game sweep.