Cole Hamels allowed one hit in eight innings, a solid single by Matt Holliday leading off the fourth, in 91-degree heat and high humidity. Four relievers, including Chad Durbin (2-1) did not allow a hit over the final three innings to finish the one-hitter.

Brad Lidge worked the 11th for his eighth save in 11 chances.

Cardinals starter Adam Wainwright missed a chance to match Colorado Rockies ace Ubaldo Jimenez as the majors’ lone 15-game winners. Kyle McClellan (1-3) took the loss.

At Miami, Ronny Paulino hit the winning single with the bases loaded and none out in the ninth inning to send the Rockies to their fifth loss in seven games since the All-Star break.

Pinch hitter Emilio Bonifacio hit his first triple of the year to start the bottom of the ninth against Jhoulys Chacin (5-8), and Paulino brought him home after two intentional walks.

Florida’s Josh Johnson struck out 11 in 6 1-3 innings and allowed only one run, on a homer by Ian Stewart in the second inning. Johnson lowered his ERA to 1.61, best in the majors.

Colorado tied the game in the eighth, but Leo Nunez (4-2) struck out the side in the ninth.

At Atlanta, Tim Hudson dominated San Diego again, Alex Gonzalez finished his first homestand in Atlanta with four hits and the Braves rolled to an easy win over the Padres.

Gonzalez had hits in his first four at-bats to give him a streak of hits in six straight at-bats over two games, four shy of the Atlanta record. He struck out in the eighth to end it.

Hudson (10-5) allowed only four hits in seven scoreless innings. He is 5-0 in nine career appearances against the Padres, including two wins this season.

The Braves scored twice in the first off Clayton Richard (7-5), and it was all they needed.

At Cincinnati, Adam Dunn hit a two-run homer off Edinson Volquez , who had a rough time in his second start since elbow surgery, and the Nationals earned a four-game series split.

Volquez (1-1) dominated Colorado last Saturday in his return from reconstructive elbow surgery. He had control problems this time, giving up six runs in only 2 1-3 innings.

Livan Hernandez (7-6) allowed seven hits during his second complete game, getting his first victory since June 21. He also singled home a run off Volquez.

The Nationals won back-to-back road games for the first time since May 12-13.

At Pittsburgh, Yovani Gallardo came off the disabled list and pitched six shutout innings for Milwaukee.

Prince Fielder and Rickie Weeks both homered for the second time in the series for the Brewers, who allowed a combined 26 runs in losing the previous two games.

Gallardo (9-4), named to his first All-star game the day he sustained a left oblique strain in St. Louis on July 4, did not allow a runner to advance past second base. He gave up five hits and a walk, striking out five.

Gallardo has won nine of his past 11 decisions and improved to 6-1 with a 1.80 ERA with 69 strikeouts in 60 innings in 10 career starts against the Pirates.

John Axford retired the final five Pirates for his 13th save in as many opportunities.

Ross Ohlendorf (1-8) allowed one run, five hits and a walk with one strikeout in six innings.

At Phoenix, Matt Cain pitched eight sharp innings in a combined three-hitter for San Francisco.

Andres Torres hit a solo homer off Rodrigo Lopez (5-9) and rookie Buster Posey extended his hitting streak to 16 games, helping the Giants (53-43) reach a season-high 10 games over .500 after their 13th win in 17 games.

Cain (8-8) one-hit Arizona on May 28, and was nearly as dominant the second time around, striking out nine. Brian Wilson pitched a perfect ninth for his 27th save in 29 chances and 13th straight.

Lopez leads the majors with 24 homers allowed, nine coming over his four July starts. He allowed three runs and five hits with seven strikeouts in seven innings. It was his third loss in four starts.

At Los Angeles, Hiroki Kuroda threw eight outstanding innings, and Matt Kemp drove in both runs for Los Angeles.

It was the Dodgers’ second consecutive 2-0 win, having edged San Francisco a night earlier.

The Mets lost their fourth straight and fell to 1-7 on their 11-game road trip, with three shutout losses. They are scoreless in their last 17 innings after going 24 straight innings without a run last weekend in San Francisco.

Kuroda outpitched countryman Hisanori Takahashi in the sixth major league meeting of starters born in Japan.

Kuroda (8-8) allowed five hits, struck out four and walked one. The right-hander ended a personal three-game skid with his first win since June 26 against the New York Yankees..

Hong-Chih Kuo , who is Taiwanese, pitched the ninth for his third save. The left-hander hasn’t given up a run in 16 1-3 innings at home.

Takahashi (7-5) gave up two runs and three hits in seven innings, struck out five and walked two.