Maholm (1-2) threw 84 pitches over seven innings, allowing two runs and six hits in his fourth start with the defending NL West champions. Chris Withrow struck out Carlos Gonzalez and Troy Tulowitzki with the bases loaded in the eighth inning to help preserve the win.
Maholm, a veteran left-hander who signed a one-year, $1.5 million contract as a free agent in February, had lost his previous seven decisions against the Rockies and was 1-8 with a 6.63 ERA in 10 career starts against them. Kenley Jansen got three outs for his ninth save.
Juan Nicasio (2-1) gave up five runs and eight hits in 4 1-3 innings for Colorado.
NATIONALS 4, PADRES 0
WASHINGTON (AP) — Tanner Roark pitched a three-hitter for his first career complete game, leading Washington to the win.
Roark set down the first 16 batters before San Diego catcher Rene Rivera, an .074 batter entering the game, hit a solid single to centre field with one out in the sixth inning.
Roark (2-0) walked one and struck out eight, including Jedd Gyorko to end the game on his 105th pitch.
Ian Desmond had three hits for Washington, including a run-scoring double in the Nationals' three-run first inning against Andrew Cashner (2-3).
BRAVES 4, REDS 1
ATLANTA (AP) — Rookie right-hander David Hale allowed only two hits over eight innings in a performance that may not be enough to save his spot in Atlanta's rotation.
Freddie Freeman, Justin Upton and Evan Gattis each homered off Cincinnati's Mike Leake (2-2).
Hale gave up a walk and two hits, including Ryan Ludwick's run-scoring double, in the first inning. He didn't allow another hit as he faced the minimum 21 batters over the next seven innings.
Cincinnati's only other baserunner against Hale came on Jay Bruce's leadoff walk in the fourth, and the Braves ended that inning with a double play.
Craig Kimbrel closed the combined two-hitter for his eighth save.
Hale (1-0) has a 2.31 ERA in four starts but could lose his spot in the rotation next week, when left-hander Mike Minor is expected to come off the disabled list.
PIRATES 6, CARDINALS 1
ST. LOUIS (AP) — Gaby Sanchez had two RBIs in a four-run fourth inning and Pittsburgh's bullpen worked seven strong innings after starter Francisco Liriano left with flu-like symptoms and dizziness in a victory over St. Louis.
Matt Holliday had an RBI double for the Cardinals, who have mustered five runs in their last six games. They got three hits and a run in seven innings off five Pittsburgh relievers.
Yadier Molina was a bust on his jersey giveaway day, striking out with the bases loaded to end the third against Stolmy Pimentel (2-0) and popping out with runners on second and third to end the fifth against Jared Hughes. He entered batting .431 during a 15-game hitting streak.
Andrew McCutchen and Jose Tabata each added an RBI off Tyler Lyons (0-2) in the fourth, with the first four runners reaching safely after the lefty opened with three perfect innings. Tabata totalled three hits and is a career .345 hitter at Busch Stadium.
PHILLIES 6, DIAMONDBACKS 5
PHOENIX (AP) — Pinch hitter Cody Asche hit a two-run double in Philadelphia's four-run eighth inning and the Phillies rallied after a shaky start by Cliff Lee.
The Phillies fell behind 5-0 in the first three innings as Lee struggled.
Philadelphia rallied by scoring two runs off Bronson Arroyo in the seventh and four more in the eighth against Joe Thatcher and Trevor Cahill (1-5).
Jeff Manship (1-0) allowed a hit and two walks in an inning and Jonathan Papelbon got three outs for his seventh save.
Cody Ross had three RBIs and two hits for Arizona, which has lost nine of 10 at home.
MARLINS 7, METS 6, 10 INNINGS
NEW YORK (AP) — Jarrod Saltalamacchia homered leading off the 10th inning, Giancarlo Stanton also went deep and Miami rallied from four runs down to beat New York.
Stanton hit a two-run shot and Miami climbed out of a 5-1 hole with a five-run sixth capped by pinch-hitter Reed Johnson's two-run double. Stanton's seventh home run of the season gave him 29 RBIs, most in the majors.
Bobby Abreu hit his first major league homer since 2012 and Lucas Duda had a two-run single for the Mets, who had won three straight and five of six. New York was trying to move four games over .500 for the first time since July 14, 2012.
Mike Dunn (2-3) struck out four in two hitless innings and Steve Cishek earned his fifth save, one night after coughing up a ninth-inning lead for his first blown save since June 4, 2013. Cishek had converted a team-record 33 straight chances before Friday.
Saltalamacchia sent a 2-2 pitch from Kyle Farnsworth (0-1) off a railing just above the left-centre fence. The ball caromed back onto the field and Saltalamacchia initially stopped at second base, but the umpires quickly waved him home without looking at a replay.
BREWERS 5, CUBS 3
MILWAUKEE (AP) — Jeff Bianchi had a two-run single, and Marco Estrada threw 7 2/3 strong innings to lead Milwaukee past Chicago.
Bianchi went 2 for 4, entering the game as a pinch-hitter in the first for Jean Segura, who was hit in the head in the dugout by a bat.
A TV replay showed the All-Star getting hit on the right side of the head during a warmup swing by teammate Ryan Braun, who was facing the field on the top steps of the dugout while Segura was coming up behind him.
Manager Ron Roenicke said that Segura didn't have a concussion or fractures, but needed stitches to close a gash on his face. It was unclear how long he might be out.
Bianchi drove in two runs with a bases-loaded single in the second off Cubs starter Travis Wood (1-3).
Estrada (2-1) had nine strikeouts.
Francisco Rodriguez tossed a 1-2-3 ninth for his 11th save.
GIANTS 5, INDIANS 3
SAN FRANCISCO (AP) — Hunter Pence hit a two-run single in San Francisco's four-run fifth inning, leading the Giants over Cleveland.
Buster Posey added a solo homer in the sixth as San Francisco earned its third consecutive win. Posey, who won the NL MVP award in 2012, went 1 for 3 and is batting .103 (4 for 39) over his last 13 games.
Michael Bourn, Nick Swisher and David Murphy had two hits apiece for Cleveland, which blew a 3-0 lead. Jason Kipnis drove in two runs.
Indians right-hander Zach McAllister was in complete control before he got into trouble in the fifth. He needed just seven pitches to get through the third and seven more to retire the side in the fourth.
McAllister (3-1) retired 12 in a row before Michael Morse led off the fifth with a single to centre. Morse advanced to third on Brandon Crawford's one-out single and scored on Gregor Blanco's pinch-hit single.