Harris made a leaping grab for the final out, robbing Josh Willingham of a game-tying RBI single, and the Washington Nationals broke a six-game losing streak by beating the Florida Marlins 2-1 Saturday night.
Patterson (1-0) allowed three hits in eight innings and matched a career high with 13 strikeouts, but the Nationals still needed Harris' heroics.
With runners at first and second and two out in the ninth, the 6-foot-1 infielder jumped to catch Willingham's liner in the web of his glove.
"That was basically lucky," said Harris, playing for an injured Jose Vidro. "I timed it right. That was at the peak of my jump when I caught it. That's about as high as I can get."
The defensive gem left the young Marlins 0-4 in one-run games.
"We can lose some tough games, can't we?" manager Joe Girardi said. "When you first see the ball hit, you think, `Tie game.' It's amazing how your emotions go up and then go right back down."
Thanks to Harris, struggling closer Chad Cordero earned Washington's first save despite walking two in the ninth.
Royce Clayton doubled home the go-ahead run in the sixth for the Nationals, who had been off to the franchise's worst start since 1970. They improved to 3-9.
"I can't explain how badly we needed this," manager Frank Robinson said.
Patterson retired the first 13 batters, eight on strikeouts, before Willingham doubled off the scoreboard. Chris Aguila followed with a double to give the Marlins a brief 1-0 lead.
Florida's only other hit was a two-out single off the scoreboard in the eighth by pinch-hitter Wes Helms, who was thrown out trying to stretch it into a double.
Patterson left for a pinch-hitter after throwing 108 pitches. He walked only one, and that was intentional.
"I had all my pitches tonight," he said. "I felt very, very confident when I came to the ballpark. I don't want to sound cocky, but I had a good feeling."
Washington came from behind with two runs in the sixth by taking advantage of rookie Scott Olsen's wildness, both to the plate and to first base. He walked three in the inning and made a wild throw to first that allowed the tying run to score.
Florida pitchers walked 10, but Washington mustered only five hits without Vidro and Jose Guillen, both sidelined Friday by injuries.
"With us right now, you can give us 20 walks and it'll still be a 2-1 or 3-2 game," Robinson said.
The status of Vidro and Guillen is day to day, but neither is expected to play Sunday.
Olsen (0-1), making his first appearance of the season, walked six in 5 1/3 innings but shut out the Nationals until the sixth.
Alfonso Soriano led off the inning with a walk, and after he was thrown out trying to steal, Nick Johnson also walked. Olsen then fielded Ryan Zimmerman's roller up the first-base line and rushed a wild, off-balance throw for an error.
"As soon as I threw it, I said, `That's not going to be good,"' Olsen said. Johnson, running with the pitch, scored from first.
Olsen left after walking Harris, and Clayton's double put Washington ahead. Harris was thrown out trying to score.
Patterson struck out six of the first seven batters, and the Marlins quickly became frustrated. Miguel Cabrera struck out swinging on a breaking pitch out of the zone to end the fourth, then slammed his bat to the ground. He struck for the third time in the sixth and flipped the bat over his head.
"Patterson lived on the outside corner and came in when he had to," Girardi said. "He didn't give our guys much to hit."
|John Patterson pumps his hands, and for good reason. He strikes out 13 in eight innings. (AP)|
|Players of the Game|
|Marlon Byrd, RF-CF||3||0||0||0||2||3||1||.148|
|Damian Jackson, CF||4||0||1||0||0||1||3||.154|
|Ryan Church, RF||0||0||0||0||1||0||0||.000|
|Alfonso Soriano, LF||4||0||1||0||1||0||3||.298|
|Nick Johnson, 1B||1||1||0||0||3||1||0||.333|
|Ryan Zimmerman, 3B||3||1||0||0||1||1||4||.217|
|Brendan Harris, 2B||3||0||1||0||1||0||0||.250|
|Royce Clayton, SS||4||0||1||1||0||1||2||.238|
|Brian Schneider, C||3||0||0||0||1||2||0||.171|
|John Patterson, P||3||0||1||0||0||0||2||.250|
|a- Marlon Anderson, PH||1||0||0||0||0||0||0||.125|
|Chad Cordero, P||0||0||0||0||0||0||0||.000|
|a-grounded out for Patterson in the 9th|
|2B - Damian Jackson (2, Olsen), Royce Clayton (1, German)|
|RBI - Royce Clayton (4)|
|CS - Marlon Byrd (1, 2nd base by Olsen/Treanor), Damian Jackson (1, 3rd base by Olsen/Treanor), Alfonso Soriano (1, 2nd base by Olsen/Treanor)|
|Team LOB - 10|
|Outfield Assists - Alfonso Soriano 1|
|John Patterson (W,1-0)||8||3||1||1||1||13||0||4.00|
|Chad Cordero (S,1)||1||0||0||0||2||0||0||4.50|
|IBB - Reed by John Patterson|
|Pitches-Strikes - John Patterson 108-75, Chad Cordero 18-7|
|Ground Balls-Fly Balls - John Patterson 4-6, Chad Cordero 1-2|
|Batters Faced - John Patterson 27, Chad Cordero 5|
|Hanley Ramirez, SS||4||0||0||0||0||2||0||.350|
|Dan Uggla, 2B||4||0||0||0||0||0||0||.229|
|Miguel Cabrera, 3B||3||0||0||0||1||3||0||.270|
|Alfredo Amezaga, PR||0||0||0||0||0||0||0||.500|
|Mike Jacobs, 1B||3||0||0||0||1||1||0||.167|
|Josh Willingham, LF||4||1||1||0||0||1||2||.333|
|Chris Aguila, RF||3||0||1||1||0||2||0||.300|
|Matt Treanor, C||3||0||0||0||0||2||1||.000|
|Eric Reed, CF||2||0||0||0||1||1||0||.095|
|Scott Olsen, P||2||0||0||0||0||1||2||.000|
|Franklyn German, P||0||0||0||0||0||0||0||.000|
|Josh Johnson, P||0||0||0||0||0||0||0||.000|
|a- Wes Helms, PH||1||0||1||0||0||0||0||.333|
|Todd Wellemeyer, P||0||0||0||0||0||0||0||.000|
|a-singled for Johnson in the 8th|
|2B - Josh Willingham (4, Patterson), Chris Aguila (3, Patterson)|
|RBI - Chris Aguila (4)|
|Team LOB - 4|
|Outfield Assists - Josh Willingham 1|
|E - Scott Olsen (1, throwing error)|
|Scott Olsen (L,0-1)||5.1||4||2||1||6||6||0||1.69|
|IBB - Schneider by Franklyn German|
|Pitches-Strikes - Scott Olsen 99-57, Franklyn German 10-5, Josh Johnson 40-20, Todd Wellemeyer 16-8|
|Ground Balls-Fly Balls - Scott Olsen 3-5, Franklyn German 1-0, Josh Johnson 1-3, Todd Wellemeyer 2-0|
|Batters Faced - Scott Olsen 24, Franklyn German 3, Josh Johnson 8, Todd Wellemeyer 4|
|Attendance - 15668|
|Game Time - 2:54|
|Temperature - 83|
|Umpires - Home - Gary Darling, First Base - Larry Poncino, Second Base - Bruce Dreckman, Third Base - Ed Hickox|