St. Louis Cardinals starting pitcher Shelby Miller (40) throws during the first inning of a baseball game against the Washington Nationals at Nationals Park Monday, April 22, 2013, in Washington. (AP Photo/Alex Brandon)

WASHINGTON (AP) — Yadier Molina drove in the go-ahead run in the sixth inning, backing Shelby Miller's strong start Monday night, and the St. Louis Cardinals returned to the site of their Game 5 NL division series victory last season with a 3-2 victory over the Washington Nationals.

The other big hit for St. Louis was Allen Craig's two-run double in the third.

Miller (3-1) struck out eight in 6 2-3 innings, allowing two runs and four hits.

All the Cardinals' runs came against Dan Haren (1-3), who gave up three runs and six hits in five-plus innings.

Edward Mujica pitched a 1-2-3 ninth for his second save. The Cardinals have alternated wins and losses over their last nine games.

Washington has lost seven of 10.

GIANTS 5, DIAMONDBACKS 4

SAN FRANCISCO (AP) — Brandon Belt hit a game-winning single in the ninth inning after Buster Posey tied the score with a two-run homer in the eighth, and San Francisco rallied to beat Arizona for its seventh straight victory at home.

Posey's drive to straightaway center was his second homer of the year, both in the past two days.

Belt's first career game-ending hit came against Tony Sipp (1-1), who allowed a leadoff single to Andres Torres. Brandon Crawford sacrificed him to second.

Jose Mijares struck out two in the ninth before yielding Cliff Pennington's double. Sergio Romo (1-1) relieved in a double switch as Belt entered at first base. Romo retired pinch-hitter Eric Hinske on a first-pitch grounder.

Diamondbacks pitcher Wade Miley hit his first career home run and Eric Chavez also connected.

PHILLIES 3, PIRATES 2

PHILADELPHIA (AP) — Jimmy Rollins hit a tiebreaking single in the sixth inning and Jonathan Pettibone had an impressive major league debut to lead Philadelphia past Pittsburgh.

Pettibone allowed two runs and six hits, striking out six in 5 1-3 innings. Raul Valdes (1-0) got two outs in the sixth and Jonathan Papelbon finished for his fourth save.

Pedro Alvarez and Russell Martin hit solo homers for the Pirates on a chilly night when the temperature dipped below 50 degrees.

Pirates starter A.J. Burnett gave up two runs and five hits, fanning seven in five innings. Jared Hughes (1-2) retired his first two batters in the sixth before running into trouble.

REDS 5, CUBS 4, 13 INNINGS

CINCINNATI (AP) — Jay Bruce hit a tying double and scored on Cesar Izturis' two-out single in the 13th inning, rallying Cincinnati to a victory that gave Chicago its fourth straight loss.

Luis Valbuena hit a two-run homer in the top of the 13th off Alfredo Simon (2-1) for a 4-2 Cubs lead.

Michael Bowden (0-1) couldn't hold it. He gave up a single by Xavier Paul, Brandon Phillips' double and Bruce's two-run double that tied it.

Izturis' single past diving shortstop Starlin Castro sent the Reds to their seventh victory in eight games on their homestand.

Bruce also hit his first homer of the season to start Cincinnati's comeback from a 2-0 deficit in the seventh.

The Cubs have dropped seven of eight and 12 of 15, leaving them in last place in the NL Central at 5-13. David DeJesus hit a leadoff homer for Chicago.

BREWERS 7, PADRES 1

SAN DIEGO (AP) — Ryan Braun hit a two-run homer and Yuniesky Betancourt had a three-run shot off Jason Marquis in the first inning to help Milwaukee beat San Diego for its eighth straight victory.

Kyle Lohse (1-1) went five innings, allowing one run and five hits, but left in the sixth after dislocating his left pinkie on a play at first base. He said he expects to make his next start.

Marquis (1-2) was rocked for seven runs in four-plus innings as the Padres dropped their fourth in a row overall and sixth straight at home.

The homer for Braun was his sixth of the season. He added an RBI single in the fifth and has 19 RBIs.