K.C. snaps five-game losing streak

Joakim Soria (48) throws to first base for the final out against Houston’s Jason Michaels. The Royals won, 2-1, on Tuesday in Houston.

? Kansas City Royals manager Trey Hillman didn’t think Zack Greinke had his best stuff on Tuesday.

The Houston Astros would have to disagree.

Greinke pitched eight sharp innings for his first win in almost a month and Billy Butler homered as the Kansas City Royals beat the Astros, 2-1.

The victory breaks a five-game losing streak for the Royals, who have won just seven of their last 23.

Greinke (9-3) allowed a run in the first before pitching seven shutout innings for his first win since throwing a complete game against Detroit on May 26.

He had two losses and a pair of no decisions in that span. The game was also his longest outing since the complete game.

“He was really tough,” Houston’s Miguel Tejada said. “The kid today was kind of like Roger Clemens pitching back in the day. I don’t want to say he’s just like Clemens, but he (had) good command today. He had the fastball at 96 (mph) 97, the slider, the changeup — everything.”

The score was tied 1-all in the third inning before Butler’s solo shot to the Crawford Boxes in left field put Kansas City ahead.

“I knew it was gone,” Butler said. “There was no need to watch it.”

Greinke, who was facing the Astros for the first time, allowed three straight singles with two outs in the first, capped by Tejada’s run-scoring hit that put Houston ahead, 1-0.

“Zack was good,” Hillman said. “He wasn’t as good as he’s always been, he was having trouble locating a little bit and they sat on a few pitches. But he did the job.”

He was replaced in the ninth by Joakim Soria who allowed singles by Tejada and Lance Berkman before striking out Ivan Rodriguez and Kaz Matsui, and ending the game with a groundout by Jason Michaels for his eighth save.

Greinke allowed eight hits, but didn’t allow an extra-base hit and didn’t give up more than one hit in any inning after the first.

Michael Bourn singled then advanced to second on a sacrifice before reaching third on a groundout by Hunter Pence in the eighth inning. But Greinke, who struck out five, was able to pitch out of trouble when Carlos Lee grounded out to end the inning.

“I started off a little slow, but I got more comfortable as the game went along,” Greinke said. “I was making pitches when I got into jams. That’s good. I just need to be able to do that.”

Butler, whose go-ahead drive was his seventh homer of the year, added a double in the sixth inning.

Jose Guillen scored on a force out in the second inning to tie it 1-all.

Astros starter Russ Ortiz (3-3) allowed five hits and two runs in seven innings for the loss. It was the longest outing of the season for Ortiz.

“Russ did a fantastic job, we just couldn’t string together more than one hit after the first inning,” Astros manager Cecil Cooper said.