Stephen Randolph (6-0) pitched a scoreless eighth and ninth to earn the win.
Steve Finley took two balls, looked at a strike, swung and miss, and fouled one off against John Franco (0-3) before delivering a walk-off homer over the right field fence.
Arizona (61-55) broke through to take the lead in the bottom of third against Mets starter Jae Weong Seo. Shortstop Alex Cintron began the inning with a triple into right and Rod Barajas drove him home with a sacrifice fly.
New York (48-68) battled back to tie it in the fourth. Tony Clark reached on an infield single and moved up to second with one out on Timo Perez's single. Jay Bell struck out, but Joe McEwing singled into left to knot it at 1-1.
OF Roger Cedeno entered the contest hitting .500 (16-for-32) over his last seven games... INF Craig Counsell was back in the lineup after being out of the lineup for two straight games with a stiff neck... LHP Al Leiter (11-5, 4.65) goes up against LHP Randy Johnson (2-4, 4.59) on Sunday afternoon...