TORONTO -- Zack Greinke got an extra day off after being slowed by a stiff neck in his last start. It paid off as he came out strong against the struggling Toronto Blue Jays.
Greinke and four relievers combined on a five-hitter, Alex Avila and Kevin Cron hit solo home runs and the Arizona Diamondbacks beat the Blue Jays 6-0 on Saturday.
Nick Ahmed drove in two runs as the Diamondbacks won their third straight.
"Great team win," outfielder Jarrod Dyson said. "Zack pitched his butt off."
Greinke (7-2) allowed four hits in six-plus innings to win for the first time in four starts. He was 0-1 in three games since a May 15 victory over Pittsburgh.
"The fastball command wasn't amazing but the offspeed was good to keep them off balance a little bit," Greinke said.
Toronto was blanked for the fifth time this season, all of them coming at home. The Blue Jays didn't put a runner in scoring position until the fifth, when Teoscar Hernández hit a two-out single and Brandon Drury walked. Greinke struck out Luke Maile to end the threat.
"That's what Zack does," Diamondbacks manager Torey Lovullo said. "He makes pitches when he has to."
Greinke left a June 1 start against the Mets after four innings because of cramps in his neck. He then flipped places in the rotation with Merrill Kelly, who started Friday.
Three of Arizona's four shutouts this season have come on the road.
The Blue Jays lost for the 13th time in 16 games. Toronto has scored two runs or fewer five times in its past seven. They've scored two or fewer runs 26 times this season, second only to Miami (29).
Toronto went 0 for 6 with runners in scoring position and left seven men stranded.
"Things aren't happening right now," Blue Jays outfielder Lourdes Gurriel Jr. said.
Greinke left after Gurriel Jr. tripled to begin the seventh. Andrew Chafin came on and struck out Rowdy Tellez. Yoshihisa Hirano fanned Hernández and Brandon Drury to keep Toronto scoreless.
"It's hard to throw shutout baseball," Lovullo said. "You're doing a lot right. One guy handed off to the next today to preserve that shutout."
Matt Andriese pitched the eighth and Zack Godley finished.
Blue Jays right-hander Aaron Sanchez (3-7) allowed five runs and six hits in six innings. He's 0-6 with a 5.71 ERA in eight starts since his most recent win, April 27 against Oakland.
Ahmed opened the scoring with an RBI single in the second, and the Diamondbacks pulled away with a three-run third, when the first four batters reached safely. Jarrod Dyson, Tim Locastro and Ketel Marte all singled, with Marte's hit bringing home a run, before David Peralta lined an RBI double to right. Two batters later, Ahmed capped the rally with a sacrifice fly.
Avila made it 5-0 with a two-out homer in the sixth, his third.
Cron connected for the second straight game with a leadoff blast off Sam Gaviglio in the ninth.
"He smashed that ball today," Lovullo said.
Diamondbacks: OF Adam Jones (right hamstring) was held out of the starting lineup for a third straight game. Jones left Tuesday's game in the fourth inning.
Blue Jays: SS Freddy Galvis (left hamstring) was held out of the starting lineup. Drury made his fourth career start at shortstop.
Toronto's Vladimir Guerrero Jr. didn't run hard on his deep drive to center in the first and was held to a single when Dyson fielded the ball off the wall and threw it in quickly. "You should always go hard," Blue Jays manager Charlie Montoyo said.
Arizona's last shutout north of the border was Aug. 30, 2000, in Montreal, when Randy Johnson struck out 10 in a five-hitter against the Expos.
Diamondbacks: LHP Robbie Ray (4-3, 3.62) has lost two straight starts. He's 2-1 with a 2.63 ERA in his past five road outings.
Blue Jays: LHP Clayton Richard (0-1, 3.55) went 0-1 with a 6.60 ERA in three starts against Arizona while pitching for San Diego last season.
More AP MLB: https://apnews.com/MLB and https://twitter.com/AP—Sports