The bodies were decomposing and the stench hung over the area, according to Petro Andryushchenko, an adviser to the mayor.
He did not say when the bodies were discovered, but the sheer number of victims makes it one of the deadliest known attacks of the war.
Heavy fighting continued in the Donbas, the eastern industrial region of Ukraine that Moscow’s forces are intent on seizing.
Russian troops have intensified their efforts to encircle and capture Sievierodonetsk and neighbouring cities.
Mariupol was relentlessly pounded during a nearly three-month siege that ended last week after some 2,500 Ukrainian fighters abandoned the Azovstal steel plant where they had made their stand.
Russian forces already held the rest of the city, where an estimated 100,000 people remain out a pre-war population of 450,000, many of them trapped during the siege with little food, water, heating or electricity.
At least 21,000 people were killed in the siege, according to Ukrainian authorities, who have accused Russia of trying to cover up the horrors by bringing in mobile cremation equipment and burying the dead in mass graves.
During the assault on Mariupol, Russian air strikes hit a maternity hospital and a theatre where civilians were taking shelter.
An investigation has found close to 600 people died in the theatre attack, double the figure estimated by Ukrainian authorities.
Ukrainian president Volodymyr Zelensky has accused the Russians of waging “total war” and seeking to inflict as much death and destruction as possible on his country.
“Indeed, there has not been such a war on the European continent for 77 years,” Mr Zelensky said, referring to end of the Second World War.
Moscow-backed separatists have fought Ukrainian forces in the Donbas for eight years and hold large swathes of territory.
Sievierodonetsk and neighbouring cities are the only part of the Donbas’ Luhansk region still under Ukrainian government control.
Russian forces have achieved “some localised successes” despite strong Ukrainian resistance along dug-in positions, the UK’s Ministry of Defence said.
Moscow’s troops also took over the town of Svitlodarsk and raised the Russian flag there, Ukrainian media reported.
Svitlodarsk is about 31 miles south-east of the strategically important city of Kramatorsk.
Two top Russian officials appeared to acknowledge that Moscow’s advance had been slower than expected, though they vowed the offensive would achieve its goals.
Nikolai Patrushev, secretary of Russia’s Security Council, said the Russian government “is not chasing deadlines”.
And defence minister Sergei Shoigu told a meeting of a Russia-led security alliance of former Soviet states that Moscow was deliberately slowing down its offensive to allow residents of encircled cities to evacuate – though forces have repeatedly hit civilian targets.
As Kharkiv, Ukraine’s second-largest city, recovers from weeks of weeks of relentless bombardment, residents formed long queues to receive rations of flour, pasta, sugar and others staples this week.
Moscow’s forces withdrew from around Kharkiv earlier this month, pulling back toward the Russian border.
Galina Kolembed, the aid distribution centre coordinator, said more and more people were returning to the city. Ms Kolembed said the centre was providing food to over 1,000 people every day, a number that keeps growing.
“Many of them have small kids, and they spend their money on the kids, so they need some support with food,” she said.