Tornadoes happen in Miami for the same reason they happen anywhere else. See the related question for how tornadoes form in general.
This actually did happen at least once. On May 12, 1997 Miami, Florida was hit by an F1 tornado. There was moderate damage to trees and buildings. Fortunately strong tornadoes are rare in Florida.
An area the size of a city is too small for any comprehensive tornado statistics. Miami itself has been hit by tornadoes as strong as F1 while areas not far from the city have had tornadoes up to F3 strength. This means that while strong tornadoes have not struck the city in recent history, it can still happen. As with all areas, most tornadoes in Florida are weak with strong ones occurring less frequently.
Tornadoes do not occur in Miami every year. Since 1950 Miami has had 27 tornadoes, which suggests an average of a little less than 1 tornado every 2 years.
Tornadoes can happen in any place that gets thunderstorms.
Tornadoes happen every year.
Tornadoes happen in Africa because of the mountains they have or because of the weather.
Tornadoes can happen in Ottawa. Canada does get tornadoes, though not as often as the U.S. due to its cooler climate.
Tornadoes can happen anywhere in the world except cold areas like Antarctica and the north pole. Tornadoes are mostly common in United States.
Most tornadoes in the U.S. happen in spring and early summer.
Yes, tornadoes can happen at any time as long as the weather is right.
Tornadoes happen in the summer every year.
Tornadoes can happen anywhere - they're usually formed from severe thunderstorms.