Well, after a couple of hours I managed to work out roughly how to reduce the spam to something manageable, checking after each one to see if it was a sensible size yet.
After running this lot, I was down to 545 spams, which I could at least page through.
DELETE FROM wp_comments WHERE comment_content LIKE '%agree%with%you,%i%think...%' AND comment_approved = 'spam'
DELETE FROM wp_comments WHERE comment_content LIKE '%[url=http://%' AND comment_approved = 'spam'
DELETE FROM wp_comments WHERE comment_content LIKE '%viagra%' AND comment_approved = 'spam'
DELETE FROM wp_comments WHERE comment_content LIKE '%cialis%' AND comment_approved = 'spam'
DELETE FROM wp_comments WHERE comment_content LIKE '%http://%' AND comment_approved = 'spam'