Ok done
If anyone else needs the query to find duplicate tags it’s:
SELECT name, COUNT(*)
FROM tags
GROUP BY name
HAVING COUNT(*) > 1
Don’t scare me now Neil!
I did have a quick look at the categories table and that seems fine (there are a few duplicated entires based on name, but they are sub-categories).
Thanks for your help @sam and @neil
(The reindex didn’t have any effect on this issue tho Neil)