Giants 6, Diamondbacks 0: Matt Cain tossed seven superb innings en route to his sixth straight win and Pablo Sandoval recorded two hits and two RBIs as host San Francisco posted its seventh victory in nine games.
Buster Posey drove in a run to become the first Giant with 100 RBIs in a season since Barry Bonds in 2004 as the National League West champions improved to 7-2 on their 10-game homestand.
Miguel Montero and Gerardo Parra had two hits apiece for Arizona, which remained 5 1/2 games behind St. Louis for the second wild-card spot in the NL with seven contests remaining. The Diamondbacks fell to 4-2 on their seven-game road trip.
Cain (16-5) limited the Diamondbacks to four hits and a walk while striking out six as he remained unbeaten since Aug. 6 at St. Louis. The right-hander, who has allowed a total of four runs in 27 1/3 innings over his last four outings, combined with three relievers on San Francisco's league high-tying 14th shutout of the year.
In addition to his impressive performance on the mound, Cain helped himself at the plate. He led off the third against Wade Miley (16-11) with a single and scored the game's first run on an infield hit by Sandoval. He later delivered an RBI infield single in the fifth that made it 5-0.
GAME NOTEBOOK: San Francisco 2B Marco Scutaro, who went 2-for-4 and scored a run, extended his hitting streak to 14 games with an RBI single in the fourth inning. ... Miley had his three-game road winning streak snapped as he surrendered four runs - three earned - on six hits and three walks over four innings. ... The Giants are expected to make an announcement Thursday on whether OF Melky Cabrera will rejoin the team when he's eligible to return from his 50-game suspension. Cabrera, who received the ban on Aug. 15 for testing positive for testosterone, will be able to come back if San Francisco's postseason extends beyond five games.