MILWAUKEE — The Phoenix Suns didn't look like the team with the second-worst record in the NBA in facing Milwaukee.
The Suns turned the tables on the league's second-best team, controlling the game from the outset and withstanding a late rally, defeating the Bucks 116-114 on Friday night on Jamal Crawford's jumper with 0.8 seconds left.
The victory gave the Suns their first road win of the season.
"We showed a lot of grit," said Crawford, in his 19th season. "Everybody was so tied together. Everybody was so engaged. We were saying the right things on the bench. This seems like the most gratifying win."
Devin Booker had 29 points, and T.J. Warren 19 for Phoenix. The Suns won for just the second time in their last nine games and ended a six-game losing streak to the Bucks.
Milwaukee lost for just the fifth time in 18 games this season.
"We came ready to play from the get-go," Phoenix coach Igor Kokoskov said. "We came to compete. It was a challenging moment for us when they came back."
Deandre Ayton credited his teammates for not folding after the Bucks stormed back to take a late fourth-quarter lead.
"It was the first time we actually answered back from a punch from another team," Ayton said. "The energy on the court was insane. I just felt that we were going to win that game."
Even so, the Bucks still nearly pulled out the victory.
After Crawford's jumper with Malcolm Brogdon draped on him, Milwaukee called a timeout. Khris Middleton, after a quick head fake, made a corner 3 after the buzzer. The call was confirmed after a brief review.
"I hesitated for some reason," Middleton said.
Giannis Antetokounmpo had a season-high 35 points to lead Milwaukee, and Brogdon added 22 points. The Bucks were coming off a 143-100 home victory over Portland on Wednesday night.
"We've got to be able to come out with more energy, especially with a team like that," Antetokounmpo said. "When you play around with a game, the game kills you."
Middleton tied it at 108 on a free throw for Suns coach Igor Kokoskov's technical foul. Antetokounmpo's layup put the Bucks up 110-108. Booker was whistled for a technical foul, and Middleton again converted to put Milwaukee up by three. Brogdon was fouled as he made a driving layup, and his free throw put the Bucks up by six and capped a frantic 14-0 run.
A three by Trevor Ariza pulled the Suns within three with about a minute left. Warren's traditional three-point play tied it at 114. After Antetokounmpo's turnover, Phoenix got possession of the ball with 12.2 seconds left, setting up Crawford's winner.
Crawford wasn't the first option on the Suns' final possession. The play had been designed for Booker to get the first look. "I got the ball and I looked for (Booker), but (Eric) Bledsoe was still on him so I didn't want to chance it, trying to get it to him," Crawford said. "I'm comfortable in that situation."
UP FOR THE CHALLENGE
Ayton said he relished the opportunity to guard Antetokounmpo late in the game. "I'm a competitor. That stuff is in my blood. I'm a lion. I take my pride into it. I just knew we needed this stop and I got it. That's it."
MISSING IN ACTION
Bucks' center Brook Lopez missed all 12 of his 3-point attempts, leaving coach Mike Budenholzer dumbfounded. "It's a surprise. He's a great shooter," Budenholzer said. "Some nights, it's not your night. "I think the positive was that he kept shooting. It takes a lot of fortitude to keep shooting. We'll keep pushing him."
Suns: Made 14 of 23 shots (61 percent) in the first quarter.
Bucks: G Donte DiVincenzo missed his fourth consecutive game with a left quadriceps strain. "I think he's close to what we had hoped but I don't have an update other than I know he's making progress in the right direction," coach Mike Budenholzer said.
Suns: At Detroit on Sunday.
Bucks: Host San Antonio on Saturday night to wrap up a six-game homestand.