さまざまな URL の負荷を調べ、ホスト名でグループ化する、このようなクエリがあります。かなり醜いですが、使用するのに十分な速さのようです。
醜い部分文字列 (ドメインの最初の部分をつかむ) がきれいに書けるようにするにはどうすればよいでしょうか? 一連のソーシャル メディア サイトからクエリを生成しているため、さらに多くのサイトが存在する可能性があります。
SELECT substring(r.name, 8, locate("/",substring(r.name FROM 8))-1) AS referer_domain,
count(USER) AS hits,
r.id
FROM core c,
referer r
WHERE c.site_url = 12
AND r.name LIKE '%/%'
AND c.referer = r.id
AND (substring(r.name, 8, locate("/",substring(r.name FROM 8))-1) = "www.delicious.com"
OR substring(r.name, 8, locate("/",substring(r.name FROM 8))-1) = "www.facebook.com"
OR substring(r.name, 8, locate("/",substring(r.name FROM 8))-1) = "m.facebook.com"
OR substring(r.name, 8, locate("/",substring(r.name FROM 8))-1) = "www.reddit.com"
OR substring(r.name, 8, locate("/",substring(r.name FROM 8))-1) = "twitter.com"
OR substring(r.name, 8, locate("/",substring(r.name FROM 8))-1) = "news.ycombinator.com"
GROUP BY substring(r.name, 8, locate("/",substring(r.name FROM 8))-1)
ORDER BY hits DESC