gpt4 book ai didi

mysql - 在mysql中按顶级域对大量url进行排序

转载 作者:行者123 更新时间:2023-11-30 00:07:47 25 4
gpt4 key购买 nike

我正在使用的 mysql 数据库有数千个 url。现在,许多 URL 将来自同一域,但每个 URL 都有不同的子域和页面名称。例如

somewebsite.com/gj29sjw  
somewebsite.com/29shw0a
somewebsite.com/92jslwa

anothersite.net/jfdkden
anothersite.net/hj2892j
anothersite.net/282j290

等等...

是否有一个查询或语法可以用来对这些网址进行分组并按最大的第一顺序对它们进行计数,而无需子域和页面名称。理想情况下,在运行计数查询后,我需要获取:

somewebiste.com | 345 
anothersite.net | 289

最佳答案

您可以使用SUBSTRING_INDEX使查询相当简单;只需取第一个斜杠之前的最后 2 个句点分隔组即可;

SELECT SUBSTRING_INDEX(SUBSTRING_INDEX(url, '/', 1), '.', -2) site, COUNT(*) cnt
FROM mytable
GROUP BY site;

An SQLfiddle to test with .

请注意,为了在查询上获得良好性能,我建议单独存储站点名称,对每个 ro 进行计算不会提供最终性能。

关于mysql - 在mysql中按顶级域对大量url进行排序,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24367438/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com