PHOENIX -- Wilmer Flores has yet to find a consistent groove with the bat during his limited time in the majors, at least going by his .211 average.
But when he comes up with runners in scoring position, watch out.
Called up from Triple-A Las Vegas on Tuesday, Flores had a run-scoring single off Brandon McCarthy (2-6) in the fourth inning and a two-run single in the eighth.
That's eight RBIs in his first five games in the majors for the 22-year-old Venezuelan.
"He doesn't strike out. I'm sure he will one of these days, but he puts the bat on the ball," Mets manager Terry Collins said. "People are yelling he's hitting .167, but look up, he's got 18 at-bats and six RBIs (before Saturday). A lot of guys on this team would take six RBIs every 18 at-bats."
New York lost the series opener on a walk-off homer by Paul Goldschmidt.
The Mets held off the Diamondbacks in the second game behind Flores, Wheeler and some clutch performances by their bullpen.
Wheeler (5-2) did his part, allowing a solo home run to Aaron Hill and little else over 6 1/3 innings to bounce back from a shaky outing previous start.
Flores put New York up 4-1 with a two-single to left off David Hernandez, but Arizona fought back, loading the bases in the bottom half against Carlos Torres. Pedro Feliciano put a quick end to that threat by striking out Gerardo Parra looking.
Arizona stranded 10 baserunners and ended the night 0 for 5 with runners in scoring position.
"We didn't capitalize on our opportunities," Diamondbacks manager Kirk Gibson said.
Wheeler had something to do with it.
The rookie right-hander struggled in his last outing, giving up four earned runs and seven hits in five innings of a loss to the Royals last Sunday.
Wheeler was sharp against the Diamondbacks, keeping them off-balance with his mid-90s fastball and looping curveball while avoiding walks -- a rarity this season.
He worked around baserunners four times in the first five innings and got a lift from catcher John Buck in the sixth, when he reached over the rail to catch a foul pop-up by Prado.
Wheeler finally made a mistake in the seventh inning, when Hill fouled off a couple of two-strike pitches before hitting a curveball just out of left fielder Chris Young's reach for a homer that cut New York's lead to 2-1.
Wil Nieves followed with a one-out single and Wheeler was replaced by Scott Rice, who got Adam Eaton to ground out with the bases loaded to end the inning.
Wheeler allowed six hits and didn't walk a batter after walking at least two in each of his first nine starts.
"The past three starts, since Miami, I just found something," Wheeler said. "I don't know what it is, but it's flowing right now. It feels good and allows me to throw downhill."
McCarthy, in his second start off the DL, got through the first three innings before Juan Lagares led off the fourth with a line-drive homer that just cleared the wall into the pool deck in right-center. Ike Davis then doubled off the wall and Flores knocked him with a single to put the Mets up 2-0.
McCarthy was good after that, getting Flores to ground out with runners on second and third in the sixth inning before being lifted for a pinch hitter in the seventh. He allowed two runs on six hits and struck out four.
"I felt pretty good," said McCarthy, who went on the DL on May 31 with shoulder inflammation. "The few pitches that I would like to have back, but overall I felt that I did a good job of commanding the ball and kind of moving them around."
Lagares is 27 for 81 with 11 extra-base hits and 13 RBIs since the All-Star break after going 2 for 4. ... Parra made a diving catch near the foul line in right to rob Buck of a hit in the eighth inning. ... Mets LHP Jonathon Niese will make his first start in Sunday's series finale since going on the DL with a partial rotator cuff tear on June 21. He is 1-2 with a 6.85 ERA in four career starts against the Diamondbacks. ... Arizona RHP Zeke Spruill will make his second career start in the majors after giving up five earned runs in four innings in a loss to Texas in his debut.