CHARLOTTE, N.C. -- Cody Zeller scored 20 points and the Charlotte Hornets snapped the Detroit Pistons' four-game winning streak with a 104-84 victory Monday night.

Marvin Williams added 14 points and 12 rebounds, and Kemba Walker had 14 points and nine rebounds for Charlotte, which has won seven of nine. Nicolas Batum added 13 points, eight assists and seven rebounds in another solid all-around game for the Hornets (12-8).

The Pistons (12-10) were led by Kentavious Caldwell-Pope's 16 points and Ersan Ilyasova's 15 points and 11 rebounds.

Charlotte, which has struggled all season on the glass, outrebounded Detroit 57-41 despite playing without injured center Al Jefferson.

The Hornets led by as many as 26 in the third quarter and coach Steve Clifford emptied his bench with about 3 minutes left in the game.

Charlotte improved to 9-3 at home.

Zeller started at center for the Hornets (12-8) with Jefferson still out due to a strained left calf. Zeller worked hard to get to the foul line, hitting 10 of 13 free throws and finishing one point shy of his career high.

The Hornets led by 11 at halftime but stretched that to 26 late in the third quarter behind an uncontested dunk in the lane by Spencer Hawes off an over-the-shoulder feed from Jeremy Lin.

The Pistons struggled on the inside after Andre Drummond picked up his fifth foul midway through the third.

Still, they cut the lead to 13 early in the fourth quarter when Caldwell-Pope knocked down a 3-pointer from the top of the key.

But the Hornets stormed back and left no doubt. Charlotte pushed the lead to 20 when Hawes scored on a pick-and-roll, and Williams controlled the boards by tipping out two long-range misses to keep possession of the ball.

TIP-INS

Pistons: Marcus Morris logged his 17th game with 10 or more points, finishing with 11. ... Detroit was 10 of 34 from 3-point range and shot 36.8 percent from the field.

Hornets: Walker played despite an illness and made his 400th career 3-pointer in the first quarter, joining Dell Curry and Glen Rice as the only Charlotte players to reach the milestone. ... Rookie guard Aaron Harrison played for just the third time this season.

UP NEXT

Pistons: Host Memphis on Wednesday.

Hornets: Host Miami on Wednesday.