Match ends, Rotherham United 1, Derby County 0.
Derby boss Frank Lampard was sent off as his 10-man Rams side were beaten at Rotherham in the Championship.
The game came to life after a goalless first half when Tom Lawrence was shown a straight red card for a reckless challenge on Richie Towell.
Ryan Manning put the Millers ahead soon after, firing in from the spot after a collision in the Derby penalty area.
The visitors struggled to create clear chances before Lampard was sent off for arguing with the fourth official.
Lampard was angered by the awarding of a penalty when Kyle Vassell went down in the box and by the referee's decision to only book Rotherham full-back Joe Mattock for a foul on Mason Bennett.
But he would have also been concerned by his side's failure to break down a hard-working Millers side.
Marek Rodak saved spectacularly to keep out Tom Huddlestone's fiercely hit first-half effort, while Semi Ajayi recovered to dispossess Bennett after he was played through on goal late on.
The Rams managed only four shots on target as they slipped to seventh in the table, while Rotherham climbed to 14th having made it back-to-back home league wins.
Rotherham manager Paul Warne said:
"The quality of player they've got and quality of bench they've got, it's going to be a really tough ask of the lads.
"But I've got really good coaches, we set up in a really good way to try and frustrate them and to try and counter-attack. The lads grew in confidence and really fancied it.
"Overall, I thought we were deserving of the win and we were excellent.
"If we play that well at home and really battle and scrap the way the lads had to, I think we'll be okay."
Match ends, Rotherham United 1, Derby County 0.
Second Half ends, Rotherham United 1, Derby County 0.
Attempt missed. Mason Mount (Derby County) right footed shot from outside the box is too high from a direct free kick.
Jon Taylor (Rotherham United) is shown the yellow card for a bad foul.
Jayden Bogle (Derby County) wins a free kick in the attacking half.
Foul by Jon Taylor (Rotherham United).
Offside, Derby County. Jayden Bogle tries a through ball, but Richard Keogh is caught offside.
Mason Bennett (Derby County) wins a free kick on the right wing.
Foul by Semi Ajayi (Rotherham United).
Corner, Rotherham United. Conceded by Duane Holmes.
Corner, Derby County. Conceded by Semi Ajayi.
Attempt blocked. Mason Mount (Derby County) right footed shot from the centre of the box is blocked.
Foul by Mason Mount (Derby County).
Will Vaulks (Rotherham United) wins a free kick in the attacking half.
Bradley Johnson (Derby County) is shown the yellow card.
Bradley Johnson (Derby County) wins a free kick in the defensive half.
Foul by Jamie Proctor (Rotherham United).
Substitution, Rotherham United. Matthew Palmer replaces Richard Towell because of an injury.
Attempt blocked. Ryan Williams (Rotherham United) left footed shot from the centre of the box is blocked. Assisted by Jon Taylor.
Delay over. They are ready to continue.
Delay in match Richard Towell (Rotherham United) because of an injury.
Attempt missed. Jack Marriott (Derby County) right footed shot from the centre of the box is too high. Assisted by Jayden Bogle with a headed pass.
Attempt saved. Ryan Manning (Rotherham United) left footed shot from outside the box is saved in the top centre of the goal. Assisted by Ryan Williams.
Offside, Derby County. Mason Mount tries a through ball, but Fikayo Tomori is caught offside.
Attempt blocked. Mason Mount (Derby County) right footed shot from outside the box is blocked.
Substitution, Rotherham United. Jamie Proctor replaces Michael Smith.
Jayden Bogle (Derby County) wins a free kick in the attacking half.
Foul by Will Vaulks (Rotherham United).
Corner, Derby County. Conceded by Jon Taylor.
Foul by Jack Marriott (Derby County).
Richard Wood (Rotherham United) wins a free kick in the defensive half.
Attempt missed. Michael Smith (Rotherham United) header from the centre of the box misses to the left. Assisted by Ryan Williams with a cross following a corner.
Corner, Rotherham United. Conceded by Fikayo Tomori.
Substitution, Derby County. Duane Holmes replaces Tom Huddlestone.
Corner, Derby County. Conceded by Semi Ajayi.
Substitution, Rotherham United. Jon Taylor replaces Kyle Vassell.
Offside, Rotherham United. Will Vaulks tries a through ball, but Michael Smith is caught offside.
Corner, Derby County. Conceded by Kyle Vassell.
Joe Mattock (Rotherham United) is shown the yellow card for a bad foul.
Mason Bennett (Derby County) wins a free kick on the right wing.