WASHINGTON (AP) - Bryce Harper, Ian Desmond and Denard Span all homered, powering the Washington Nationals to a 4-1 win over the New York Mets on Saturday.
Dan Haren (5-11) pitched seven innings for his first win since May 9, allowing one run and three hits.
Desmond and Span hit back-to-back homers against Dillon Gee (7-8) in the second inning and Harper followed with a two-run drive in the third.
Harper returned to the starting lineup after being limited to pinch-hitting duty in the second game of Friday's doubleheader. The All-Star outfielder aggravated his left knee while diving for a ball in the opener.
BRAVES 2, CARDINALS 0
ATLANTA (AP) - Andrelton Simmons hit a two-run double in the eighth inning and Atlanta, boosted by Julio Teheran's sharp outing, beat St. Louis in a matchup of NL division leaders.
Teheran allowed two hits in seven innings, striking out six and walking one.
Simmons' bases-loaded, two-out double came on a 99 mph fastball from Trevor Rosenthal.
Randy Choate (1-1) walked Freddie Freeman to open the eighth. Evan Gattis struck out and Brian McCann singled. Rosenthal relieved and struck out Dan Uggla before walking Chris Johnson to load the bases.
Luis Avilan (3-0) pitched a perfect eighth and Craig Kimbrel recorded three outs to earn his 30th save.
Cardinals starter Joe Kelly pitched 6 1-3 scoreless innings, allowing seven hits and walking three.
PIRATES 7, MARLINS 4
MIAMI (AP) - Michael McKenry had a career-best four hits and drove in two runs and Neil Walker and Garrett Jones each added two RBIs in Pittsburgh's victory over Miami.
McKenry, who came into the night batting .191, raised his average 26 points with a double and three singles. Walker added three hits for the Pirates, the NL wild-card leaders who set the tone with three first-inning runs against Miami's Tom Koehler (2-6).
Charlie Morton (3-2) allowed a season-high nine hits in five innings, finding a way to win consecutive starts for the first time since May 2011. Mark Melancon worked the ninth for his fourth save.
Koehler gave up nine hits and five runs in five innings.
PADRES 12, DIAMONDBACKS 3
PHOENIX (AP) - Andrew Cashner threw six solid innings and hit his first career home run to help lead San Diego over Arizona.
Chris Denorfia and Chase Headley added back-to-back home runs, Yonder Alonso drove in four runs and Carlos Quentin had three RBIs for the Padres, who have won two of their last three and four of six.
Cashner (7-5) allowed three runs on four hits, walked five and struck out five for his second straight win, both coming during a 10-game road trip.
Paul Goldschmidt and Miguel Montero homered for the Diamondbacks, who had their two-game winning streak snapped.
San Diego managed only three hits off Arizona starter Tyler Skaggs (2-3), but took advantage of the rookie left-hander's lack of control to open an 8-1 lead after four innings.
CUBS 1, GIANTS 0
SAN FRANCISCO (AP) - Nate Schierholtz homered off former teammate Sergio Romo with one out in the ninth inning to lift Chicago over San Francisco.
Schierholtz worked a full count off Romo (3-6) before hitting a towering blast into the right field stands to hand Romo his second loss in as many games.
Starlin Castro added two hits for Chicago, which is 18-13 in its last 31 games.
Madison Bumgarner pitched eight shutout innings for San Francisco but left without a decision. The World Series champs have lost six of seven and are a season-high 11 games under .500.
Pedro Strop (1-0) pitched one inning for the win and Kevin Gregg worked the ninth for his 21st save to complete the five-hitter.
DODGERS 4, REDS 1
LOS ANGELES (AP) - Hyun-Jin Ryu gave up two hits over seven innings and retired his last 13 batters, Skip Schumaker hit a tiebreaking two-run homer, and Los Angeles beat Cincinnati.
Ryu (9-3) had nine strikeouts in a span of 13 batters. Cincinnati's run came on a homer by Jay Bruce in the second.
The Dodgers increased their NL West lead to 1 1/2 games over Arizona.
Ryu faced South Korean countryman Shin-Soo Choo for the first time in the major leagues. The Reds' center fielder walked, grounded out to first base and struck out.
Kenley Jansen got the last three outs for his 14th save.
Bronson Arroyo (9-8) gave up three runs and eight hits in 5 1-3 innings.
BREWERS 7, ROCKIES 5
DENVER (AP) - Carlos Gomez had two hits and three of Milwaukee's five stolen bases, Juan Francisco and Jonathan Lucroy homered, and the Brewers held on to beat Colorado on a rainy night.
Milwaukee's Jean Segura had two hits and two RBIs before leaving with tightness in his right forearm.
Troy Tulowitzki had a home run among his three hits and Wilin Rosario also went deep for the Rockies.
The Brewers were three outs from winning when the rain picked up and caused a 1-hour, 45-minute delay in the middle of the ninth inning. Jim Henderson then got the last three outs for his 12th save.
It made a winner out of Tom Gorzelanny (2-4), who allowed four runs and six hits in 5 1-3 innings.
Collin McHugh (0-2), vying to make a case to be the Rockies' No. 5 starter, gave up six runs and nine hits in five innings.