Greinke retired his first 13 batters before finishing with a two-hitter, leading the Dodgers over the Colorado Rockies 1-0 on Saturday.
"He had a good slider and his four-seamer was cutting, which made him effective," Rockies right fielder Michael Cuddyer said. "But more than anything, it was his location. He threw a lot of strikes. His velocity was good and he kept the ball down."
The Dodgers won for the 14th time in 17 games, despite the absence of rookie outfielder Yasiel Puig, who missed his first game since his promotion on June 3 because of a sore left hip. He was removed during each of the previous two games of this series for precautionary reasons.
Greinke (8-2) struck out nine, walked one and got 14 groundball outs while recording his fourth shutout and 13th complete game in 245 career starts. He out-pitched Tyler Chatwood (5-3), who gave up a run in the first inning then nothing the rest of the way while going the distance for the first time in 49 big league starts.
Greinke set down the first 11 Colorado batters on just 31 pitches -- inducing 10 groundballs and a checked-swing popup to third base by Todd Helton.
"It wasn't a plan. It just kind of happened that way," Greinke said after winning his fifth straight start. "I wasn't necessarily trying to do it. I was just down in the zone a lot, and that had a lot to do with why the results were good.
The Rockies got one runner as far as second, when Helton worked out a nine-pitch walk to open the eighth and pinch-runner Josh Rutledge stole on the next pitch. But Greinke retired the next three batters.
The Rockies didn't get their first baserunner until Helton lined a clean single to left-center on a 2-2 curve ball with one out in the fifth.
"Really I just threw fastballs and sliders today," Greinke said. "Every time I threw a curveball, they hit it hard. So I tried not to throw too many of them."
Greinke needed only 44 pitches to get through five innings, and had so much energy by then that he stole his first base of the season without a throw from catcher Yorvit Torrealba after lining an opposite-field single to right in the bottom of the fifth. He then proceeded to strike out four of his next six batters.
The 29-year-old right-hander, who signed a six-year, $147 million contract with the Dodgers in December as a free agent, improved his home record to 5-0 with a 2.17 ERA in seven starts at Dodger Stadium. In his last 43 home starts overall, he is 28-2 with a 2.93 ERA.
"It's not like we were being as aggressive as possible. I mean, the guy was throwing strikes, so we swung," Rockies center fielder Dexter Fowler said. "He was throwing everything and was around the zone."
"That was definitely a tough one," Chatwood said. "My stuff was the same all game, and I attacked the zone. I threw the ball good today, but that's just how it goes. You have to tip your cap to Zack. He pitched a good game."
Chatwood struck out four and walked two in eight innings. The right-hander got through seven for the first time in 30 starts since July 24, 2011, during his rookie season.
"We didn't get a win, but I don't think his outing was wasted," Cuddyer said. "I think he can continue to build off that."
Greinke's win came on the 11th anniversary of the day he signed his first professional contract with the Royals, and was his third career 1-0 victory as a starter. ... Cuddyer was back in the lineup after sitting out Friday's game against three-time All-Star Clayton Kershaw. Cuddyer's 27-game hitting streak ended against Kershaw on July 2 at Coors Field. ... Greinke is 11 for 30 at the plate for a major league-best .367 average among pitchers. ... After Sunday's series finale, Cuddyer and teammates Carlos Gonzalez and Troy Tulowitzki head to New York for the All-Star game -- each of them an extra $25,000 richer because of All-Star bonus stipulations in their respective contracts. ... Greinke's next victory will be his 100th in the majors.