The train was crossing a bridge on its way to the capital, Dhaka. (Representational)

A passenger train derailed in Bangladesh on Monday, killing at least five people and injuring more than 100, and there could be more casualties inside two carriages that fell into a canal, a police officer said.

The train was crossing a bridge on its way to the capital, Dhaka, from the eastern city of Sylhet when it went off the rails, police superintendent Mohammad Shahjalal said.

He said there could be more bodies in the carriages that were submerged in the canal, he said.

The derailment occurred near the Moulavi Bazar district, 210 km east of Dhaka.

Railway accidents occur relatively frequently in Bangladesh, many of them at unsupervised crossings.