KANSAS CITY, Mo. (AP) — Johan Oviedo pitched a two-hitter for his first complete game in 53 major league starts, Ke’Bryan Hayes had four hits and Zack Greinke lost his ninth consecutive decision in the Pittsburgh Pirates’ 5-0 win and the Kansas City Royals on Monday night.

Oviedo (8-13) struck out five and walked two while throwing a career-high 112 pitches. It was just the 28th complete game in the major leagues this season and the first complete game in 150 professional starts for the 26-year-old right-hander dating to 2016.

Kansas City (41-92) didn’t advance a runner past first base. The Royals were blanked for the 14th time this season and held to two hits or fewer for the eighth time.

Greinke (1-13) gave up two runs and six hits in 4 2/3 innings, dropping to 0-9 in 17 starts since beating Baltimore on May 3. The 39-year-old right-hander is tied with Oviedo, Kyle Freeland and Rich Hill for second in the majors in losses, trailing only teammate Jordan Lyles at 15. Grienke had only 1-2-3 inning.

Hayes singled in the first, hit an RBI double in the third for a 2-0 lead, singled in the fifth to chase Greinke and singled in the seventh against Taylor Hearn. Hayes is hitting .438 (21 for 48) since Aug. 9 with four doubles, four home runs and eight RBIs.

Alfonso Rivas hit a run-scoring double-play grounder in the second first after Endy Rodriguez’s leadoff single and walks to Jack Suwinski and Liover Peguero.

Andrew McCutchen and Joshua Palacios had RBI singles in the seventh off Hearn. and Rivas doubled in a run in the eighth against Jackson Kowar.


Royals: RHP Brady Singer is going to miss his next turn Wednesday. Manager Matt Quatraro said Singer has shown signs of arm fatigue but there is nothing physically wrong.


LHP Cole Ragans (5-4, 3.66 ERA) starts Tuesday night.