Ed Sheeran has said it is a "dream come true" to have claimed the Christmas number one for 2017.

The British singer-songwriter's song Perfect has retained its place at the top of the charts, ending his year of dominating the charts with a festive flourish.

He fended off competition from Eminem with River, on which Sheeran also appears, and Wham! classic Last Christmas in the battle for the accolade.

In a message to his fans, Sheeran told OfficialCharts.com: "Thank you very much for making Perfect Christmas number one.

"This is an actual dream come true and I'm very proud and happy. Thank you so much and have a very merry Christmas, happy holidays and a happy new year."

In recent weeks, the 26-year-old's Perfect has been given a new lease of life as he released new versions with Beyonce and classical singer Andrea Bocelli.

According to the Official Charts Company, the song acquired combined sales of 85,000 across downloads and streams in the past seven days.

The track has now also been certified double platinum by the BPI, having achieved 1.23 million combined UK sales to date.

Eminem's River has finished the week at number two, while Last Christmas is at number three following a social media campaign to get the beloved hit to the top spot in honour of the late George Michael.

Mariah Carey's festive hit All I Want For Christmas Is You is at number four, and Rita Ora is at number five.

While Eminem did not manage to score the Christmas number one single, the US rapper did top the album charts with his new release Revival.

He booted Sheeran's Divide from the number one spot, having achieved combined sales of 132,000 to debut at the chart summit.

Revival, Eminem's eighth consecutive chart-topping album in the UK, has now been certified gold by the BPI and is the year's second-fastest selling album behind Sheeran's.

Eminem has now joined record-holders Abba and Led Zeppelin for the most number one albums in a row in the UK.

In total, 16 of the top 40 singles have a Christmas theme - more than in any other year. Last year 10 of the top 40 were festive songs, while in 2015 the number was seven.

The trend for classic Christmas songs to re-enter the chart is a recent one. It has been encouraged by changes to the way the top 40 is calculated to reflect the popularity of streaming and other digital musical services.