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.
Mets right-hander Matt Harvey was roughed up for six runs in six innings Thursday night against the Braves, and afterward manager Mickey Callaway said he wasn't sure whether Harvey would make his next scheduled start.
The Arizona Diamondbacks' pitching staff has made a steady climb under pitching coach Mike Butcher the last two seasons, so much so that they appear as prepared as any to withstand the loss of No. 4 starter Taijuan Walker.
Craig Counsell wouldn't admit it, but he was pretty excited to write both Lorenzo Cain's and Christian Yelich's names atop his lineup card Thursday night.
Arizona right fielder Chris Owings left the Diamondbacks' game against the Giants after colliding with center fielder A.J. Pollock.
A mint condition 1952 Mickey Mantle Topps rookie card auctioned for $2.88 million, becoming the second-highest price ever paid for a baseball card.
Ketel Marte hits his first home run of the season to give Arizona a 3-1 lead.