Representational image
The attack took place as people had gathered in a square by the river in Hengdong county.
The driver, Yang Zanyun, 54, first ploughed through the people with his vehicle and later got out of it and went on a rampage attacking people with a knife.
Three people were killed and 43 others were injured, state-run China Daily reported.
Yang was detained by the police, who said he has a criminal record and has been jailed several times.
Knife attacks by disgruntled people in public places and schools to highlight their grievances periodically occur in China.
Several bystanders posted graphic video footage shortly after the incident on Chinese social media. In the videos, dozens of people can be seen lying on the ground, some in pools of blood, while panicked crowds and emergency services personnel gather around them, Hong Kong-based media reported.