HOUSTON -- With more than 100 family and friends in attendance, Arizona starter Wade Miley wanted to put on a good show Friday night and help his team build on a comeback win a night earlier.
Done and done.
"Didn't come easy for sure, but Wade held us in there, six strong innings," Arizona manager Kirk Gibson said. "We kind of scratched and clawed three runs out of this game."
Miley hit a sacrifice bunt and Chris Young doubled in a run in the fifth for Arizona, which has won seven consecutive games against the Astros. Paul Goldschmidt added another RBI double in the eighth.
Many of Miley's relatives and friends drove five hours from his hometown of Hammond, La., to watch him.
"I heard them," Miley said. "It was fun."
Houston has dropped four of five to fall to 6-28 since the All-Star break. The Astros are 39-81 overall for the worst record in the majors.
Miley (13-8) allowed eight hits, struck out five and walked none in his first win since July 31 at Los Angeles. The left-hander was 0-2 with a 3.48 ERA in his previous two starts.
"It was a battle," said Miley, who had trouble locating his fastball. "But any time you get a win is a good day."
The Astros were held to two runs or fewer for the third time in four games, despite outhitting Arizona 11-6. Houston stranded 10 and went 2 for 11 with runners in scoring position.
"Anytime you get 11 hits and only score one run, there's going to be some frustrations coming through," Astros manager Brad Mills said.
Astros left-hander Dallas Keuchel (1-5) gave up two runs and four hits in 6 2/3 innings, but remained winless since June 23 at Cleveland. He is 0-5 with a 6.18 ERA in his last eight starts.
Houston, which has struggled at the plate for much of the season, came close to being shut out for the 12th time.
Greene's one-out fly ball to center was deep enough for Marwin Gonzalez to score, cutting Arizona's lead in half.
"We haven't been very good winning games in which we haven't scored a lot of runs, but last two nights have been very good," Gibson said. "We hope that continues."
Diamondbacks OF Jason Kubel was scratched with a sore neck. ... 3B Chris Johnson faced his former team for the first time since the Astros traded him on July 28 for minor leaguers Bobby Borchering and Marc Krauss. Johnson went 0 for 3 with a walk. ... Former Astros knuckleballer Joe Niekro was enshrined into the Astros Walk of Fame outside Minute Maid Park. Niekro pitched for the Astros from 1975-1985. He died in 2006 at age 61.