Greinke, making his first start since suffering a mild right calf strain Feb. 27, allowed six hits in two innings with two strikeouts..
Arizona starter Michael Lee allowed two runs in three innings. Cesar Carrillo followed Lee with three scoreless innings.
Arizona's second-inning rally started with Marte's homer, followed by singles from Duncan and Henry Blanco. Lee moved the runners over with a fake bunt groundout. Duncan scored on Tony Campana's single and Blanco on Pennington's sacrifice fly.
Up next: The D-backs will send Archie Bradley to the mound against the Mariners on Thursday afternoon at Salt River Fields in a game that can be heard on an exclusive webcast at 1:10 p.m. MST. This will be Bradley's final start before he gets the ball against Team Australia in an exhibition game March 21 in Sydney.
Ken Gurnick is a reporter for MLB.com. This story was not subject to the approval of Major League Baseball or its clubs.