Updated

Colorado rookie Christian Friedrich pitched four-hit ball for seven innings in the best outing of his young career and the Rockies won for the seventh time in eight games, 4-0 over the Arizona Diamondbacks on Monday night.

The 24-year-old left-hander struck out four and walked two, both in the first inning, to improve to 4-1 in six starts.

Wilin Rosario had a solo home run and an RBI infield single for the Rockies, who snapped a five-game Chase Field losing streak. Joe Saunders (3-4) allowed four runs on 11 hits in 6 2-3 innings to take the loss.

Matt Belisle and Adam Ottavino each pitched an inning to complete the shutout.

With the victory, the Rockies pulled within a half-game of Arizona for third in the NL West. The reigning division champion Diamondbacks, off to a sputtering start to the season — especially at home, had won three of four, all on the road, entering the contest, the opener of a six-game home stand.

Dexter Fowler started the game with a triple to the right-center gap, extending his hitting streak to nine games. Marco Scutaro followed with a sacrifice fly and it was 1-0 in a hurry.

The Rockies got two more in the second after Todd Helton stretched his hitting streak to 10 games with a leadoff double, then Jordan Pacheco singled to put runners at first and third. Rosario beat out a grounder to shortstop for an infield hit and brought Helton home. DJ LeMahieu singled and Pacheco scored on catcher Henry Blanco's passed ball to make it 3-0.

The Rockies added a run in the fourth when, on a 3-0 pitch, Rosario hit one into the swimming pool area in right-center, his ninth home run of the season.

Arizona loaded the bases in the first but came up empty. Willie Bloomquist drew a leadoff walk, then Paul Goldschmidt extended his career-best hitting streak to 13 games with a two-out double to put runners on second and third. Chris Young walked, but Josh Kubel's fly out to center ended the inning.

The Diamondbacks threatened again in the fourth when Aaron Hill led off with a double and advanced to third when Justin Upton grounded out, but Friedrich struck out Goldschmidt and Young. Gerardo Parra's pinch-hit double led off the Arizona eighth and Hill drew a one-out walk. Upton grounded in to a fielder's choice and, with runners at first and third, Belisle struck out Goldschmidt to end the inning.

NOTES: The seven innings tied Friedrich's longest outing of the year. ... The Diamondbacks had won two home games in a row but now have dropped four of their last 15 at Chase Field. ... Colorado had lost five straight games at Arizona. ... Ian Kennedy (4-5, 4.26 ERA) goes for his second straight win for Arizona on Tuesday night, while the Rockies send Joe Guthrie (3-3, 5.48) to the mound. ... In his nine-game hitting streak, Fowler is 17 for 32 with three triples, three homers, nine RBIs and 15 runs scored. ... Arizona is 10-16 at home, Colorado 9-15 on the road. ... Nine players had hits for the Rockies. ... Upton went 0 for 4 and has four hits in his last 24 at-bats.