In Pittsburgh, Dave Parker's three RBI and Cecilio Guante's strikeout pitching enabled the Pirates to win their 13th game in their last 16.
Parker doubled and scored in the second and had an RBI single in the fourth, then hit a two-run homer in the eighth. Hitting .241 on July 11 and threatened with benching, Parker has raised his average to .281 as Pittsburgh has climbed from fifth to first in the NL East.
The Pirates took a 1-0 lead in the first against Dave Dravecky (12-7) when Brian Harper tripled and scored on Bill Madlock's sacrifice fly.
Dale Berra's RBI single scored Parker in the second. After Steve Garvey's RBI double in the third cut the lead to 2-1, Jason Thompson walked to lead off the fourth and scored on Parker's single.
Madlock's homer, his ninth of the season, gave the Pirates a 4-1 lead in the fifth.
But Terry Kennedy doubled in a run and Gary Templeton singled in another in the sixth before Guante replaced starter Rick Rhoden (8-8) with the bases loaded and none out. He struck out Ruppert Jones, Juan Bonilla and pinch-hitter Tony Gwynn.