The attacker then turned his large knife on himself, gashing his own neck, abdomen and torso, said police in Saudades, a town of 10,000 people in Santa Catarina state.
“He was taken to the hospital in critical condition,” they said in a statement.
Authorities did not indicate a motive for the gruesome attack and said the assailant had no criminal record.
The children’s ages were not released, but local media reported that the daycare was for children aged six months to two years.
A fourth child suffered light wounds, police chief Jeronimo Marcal Ferreira told journalists outside the daycare, where police and emergency workers had cordoned off the area.
Governor Daniela Reinehr declared three days of mourning across the state.
The last deadly school attack in Brazil was in March 2019, when two former students shot eight people dead before killing themselves at a high school in the southeastern town of Suzano, near Sao Paulo.