PHOENIX -- Wade Miley knows how to beat Colorado. Just don't ask him to explain it.
"I have no idea. It's the mentality I take to anyone else," Miley said after improving to 6-0 against the Rockies in his career in Arizona's 9-2 victory Saturday.
"Just go out and try to keep us in the game. I try not to think about that. It's when things go bad when you start thinking about stuff like that."
Miley (10-10) gave up two runs in 6 1/3 innings and also had two of the D-backs' 16 hits, including an RBI double. He has a 2.56 ERA in nine appearances against the Rockies, with eight starts. Six have been quality starts.
"It is probably one of those lineups that can be good for him," D-backs catcher Miguel Montero said.
Aaron Hill homered and drove in three runs, Gerardo Parra had two doubles and Montero had three hits and scored a run as the D-backs (74-73) avoided falling under .500 for the first time this season.
Hill hit a bases-empty homer in a two-run seventh inning for a 6-2 lead and added a two-run single in a three-run eighth.
"We finally put one together. It's been awhile," Arizona manager Kirk Gibson said.
Montero had three hits for the second straight game after going 3-for-3 with two walks Friday, and he reached base eight straight times before striking out in the seventh inning. He is hitting .244, the highest his average has been since April 17.
"It wasn't that long. It was only six months," Montero said of his struggles.
Colorado broke Miley's shutout in the seventh when Wilin Rosario singled with one out and scored on Todd Helton's double off the center field fence. Nolan Arenado singled in Helton, knocking out Miley.
"He is tough whenever I have seen him," Colorado manager Walt Weiss said. "A real good fastball angle, so there is some deception there. He works both sides of the plate. He is a real solid pitcher."
Rosario had two hits for Colorado (68-81), which has lost six of its last eight.
Miley joined Randy Johnson as the only two D-backs left-handers to have consecutive 10-win seasons after going 16-11 last year. Johnson did it from 1999-2002.
"It's awesome being mentioned with Randy Johnson, but I'm going out to get three more, three more starts," Miley said.
National League batting leader Michael Cuddyer was 0-for-4 but is hitting .332, still ahead of Atlanta's Chris Johnson (.330).
In his first start since July 7, Roy Oswalt (0-6) struck out the side in the first inning but ran into trouble in the second when the D-backs took a 2-0 lead.
Montero singled with one out and took third on Davidson's double to left field -- a ball that caromed off diving left fielder Charlie Culberson's glove. Parra followed with a double to deep center field to drive both runners in.
Oswalt was removed after the D-backs loaded the bases with two outs in the fifth inning but did not score.
"I still don't have a 100 percent of my legs," said Oswalt, who suffered a hamstring injury in Arizona on July 7 that kept him out for two months. "I backed off a bit in the second trying to throw some balls down n the zone.
NOTES: Colorado LHP Jorge De La Rosa (thumb) will not make his next scheduled start against St. Louis on Monday. "We're not sure how much we'll push him back," Weiss said. "We haven't gone as far as talking about shutting him down for the season." The Rockies have not named a starter. ... Arizona RHP J.J. Putz threw 25 pitches in a simulated game and manager Kirk Gibson indicated that Putz could be activated in the next few days. Putz has been on the disabled list since Aug. 24 with a dislocated right pinkie. ... Colorado LF Carlos Gonzalez (finger) has not had a plate appearance since Aug. 4 and may not swing a bat again this season, Weiss said, although no decision has been made. "It's getting to a point, and we're getting pretty close here, (that) I don't know if it becomes worth it to possibly set him back into the offseason," Weiss said. Gonzalez, hitting .302 with 26 home runs and 70 RBIs, has made six appearances since returning from the disabled list on Sept. 3 as a defensive replacement or a pinch-runner. ... The retractable roof at Chase Field was opened in the top of the fifth inning.