Arizona Diamondbacks Justin Upton (R) is greeted at home plate by teammate Ryan Roberts after hitting a two run home run in the sixth inning against the St. Louis Cardinals at Busch Stadium in St. Louis on July 7, 2011. UPI/Bill Greenblatt

Arizona’s Justin Upton came back after a 50 minute rain delay in the sixth inning and hit a two run homer off starter Kyle McClellan who came back out to pitch. That gave the Diamondbacks a 3-0 lead and eventual 4-1 win Thursday night at Busch Stadium.

McClellan is now 6-6 and hasn’t won in his last six starts, going all the way back to May 19. He thought he was fine. “If I didn’t feel like I could do it, I wouldn’t have gone out there. They asked me to give them an honest opinion and I felt good warming up and I felt like I was fine.”

McClellan’s counterpart was fine too. Joe Saunders was lifted in time after the rain delay, Saunders never allowed a runner to get to second base over his final four innings. He retired nine in a row at one point. He worked out of a first inning jam after giving up a lead off double to Ryan Theriot and a walk to David Freese, he retired Albert Pujols on a fly out and Matt Holliday hit into a double play.

Holliday doubled in the Cardinals only run, who have lost four of six and are back in a first place tie with Milwaukee. Albert Pujols went 0 for 3. He’s 1 for 9 since his return from the DL.