Zac Gallen struck out 12 over 6 1/3 innings and stretched his scoreless streak to 28 innings, leading the Diamondbacks over the Kansas City Royals 2-0.
He struck out six straight batters in the fourth and fifth innings.
Ryan Yarbrough (0-3) gave up one run over four innings as Kansas City fell to 6-19.
Royals: Start a four-game series at Minnesota on Thursday. Kansas City will start RHP Zack Greinke (0-3, 4.61 ERA) in the opening game at 6:40.