Paul Goldschmidt hit a three-run homer and sacrifice fly to pound Tim Lincecum again, and the Arizona Diamondbacks beat the San Francisco Giants 7-3 on Wednesday night.