Flooding in the western Canadian city of Calgary has forced 100,000 people from their homes.

Areas along the Elbow river started to flood on Thursday and police urged to people to stay away from downtown and not go to work.

There were no reports of deaths or injuries, even as people retreated rapidly from flooded areas by road, boat or helicopter.

"The fact that we have to the best of our knowledge not one single injury is nothing short of a miracle," Calgary Mayor Naheed Nenshi told a news conference.

"Last night I saw the river run faster and higher than I have ever seen in my life."

Around 100,000 of Calgary's 1.1 million residents were ordered to leave their homes, while smaller communities were evacuated elsewhere in the western Canadian province.

More than 100mm of rain has fallen in some parts of southern Alberta in just two days.

Alberta lies to the east of the Rockies, and many parts of the province are normally very dry. But a stubborn area of high pressure in Alaska has pulled a stream of moisture from the United States, causing the heavy rainfall.