yo,
das ist viel verständlich und damit kann dir auch weiter geholfen werden.
SELECT country, COUNT(*) AS Anzahl
FROM visits v
INNER JOIN data d ON v.ip-long BEWTEEN d.from AND d.to
GROUP BY d.country
ORDER BY Anzahl DESC
LIMIT 0,30
wobei das LIMIT mit vorsicht zu genießen ist, da natürlich länder mit genau der gleichen anzahl hiervon ausgeschlossen werden können, wenn sie alle auf den 30. platz wären, bzw. davor, wenn es genügend mit den gleichen wert gibt. wenn dir das aber so reicht, kannst du sie verwenden, willst du diesen sonderfall noch mit abdecken, muss du das in einer unterabfrage abfangen und das geht bei mysql dann erst ab 4.1+
Ilja