PHOENIX (AP) -- With two big swings, Charlie Blackmon provided just enough offense to salvage the finale of Colorado's season-opening series in Arizona.
The leadoff hitter and reigning National League batting champion homered twice, and the Rockies edged the Diamondbacks 2-1 on Saturday night.
"Charlie Blackmon is a good hitter and he beat us tonight," Arizona manager Torey Lovullo said. "He single-handedly beat us. Sometimes you've got to give credit where credit is due."
Colorado's pitching staff had a lot to do with the win, too.
After scoring 17 runs in the first two games, Arizona managed only an unearned run Saturday.
"We got to pitch," Rockies manager Bud Black said, "and if we don't pitch we are not going to contend."
Blackmon, whose three hits in the series were all homers, tied the game with a leadoff drive against Zack Greinke in the sixth inning. He added another leadoff shot against Fernando Salas (0-1) in the eighth.
The Rockies' new-look bullpen allowed one hit in the final four innings.
Bryan Shaw (1-0) pitched a scoreless seventh to get the victory. Jake McGee retired the heart of Arizona's lineup in order in the eighth, and Wade Davis pitched a perfect ninth for the save in his Rockies debut.
"Just happy to get out there for the first time and get some of the jitters out of the way," said Davis, who had 32 saves in 33 tries for the Cubs last season. "There is definitely tons (of jitters), especially not pitching the first two games. I was really happy to get out there."
Greinke and Rockies starter German Marquez each had a solid performance.
Greinke, a 17-game winner last season who had his first start pushed back by a minor groin issue in spring training, struck out nine in 5 2/3 innings.
Marquez allowed four hits, struck out four and walked four in five innings. His strong outing followed two poor outings by Rockies starters.
"You see how a starting pitching performance keeps you in the game, even though it was only five innings," Black said. "It kept us in the game and from here we got a couple of big swings from Charlie and the bullpen did an incredible job."
The Diamondbacks took the lead in the fourth.
Daniel Descalso singled with one out and Jarrod Dyson hit a bouncer toward second base. Shortstop Trevor Story booted the grounder into center field and Descalso advanced to third. He scored when Nick Ahmed grounded into a fielder's choice, barely beating out the potential double play.
Greinke blanked the Rockies for five innings on three hits before Blackmon caught the pitcher's slow curve ball on the first pitch of the sixth and sent it into the right-field seats.
Greinke uses the curve, in the mid-70 mph range, often but hadn't thrown it to Blackmon all night.
"He's pretty patient first pitch but he doesn't necessarily give up on a first-pitch curve," Greinke said. "If you locate it a little better, it's probably going to be OK. It was just a bad location. You've just got to hope he takes it, with where the location was."
Asked if he was expecting the curve, Blackmon said: "It is a secret."
"I can't tell you that," he said, "but I will say he threw that pitch down the middle, which makes it easier."
Ten of Colorado's 11 runs in the series came via the home run.
Diamondbacks: RHP Randall Delgado (on the 10-day DL with a left oblique strain) threw 30 pitches in a bullpen session on Friday. RHP Shelby Miller, on the 60-day DL recovering from Tommy John surgery, threw 35 pitches in his session.
The Diamondbacks commemorated their 20 years in the majors with the starting pitcher of their first game, Andy Benes, throwing out a ceremonial first pitch to Jorge Fabregas, his catcher that day. Sam Moore of Sam and Dave's "Soul Man" fame sang the national anthem, just as he did in that first game in 1998. The first 20,000 fans got jerseys in the team's old purple pinstripes with the No. 98, the year the team began play.
Both teams have Sunday off.
The Rockies send right-hander Chad Bettis to the mound Monday night in the opener of a three-game series in San Diego.
Arizona opens a three-game series at home against the Los Angeles Dodgers on Monday night, with right-hander Taijuan Walker on the mound for the Diamondbacks and right-hander Hyun-Jin Ryu going for the Dodgers.