It happened at the intersection of Tryon Road and US 1.
Officials said the bus with 20 students on board was coming from Perry Road Elementary School.
Three students and the bus driver had to be taken to the hospital.
There is no word on their conditions.
The cause of the crash remains under investigation.