首页 > 解决方案 > 如何从mysql中的url中删除子域?

问题描述

我在这个页面上发现了一个类似的问题Mysql query to extract domain from urls

SUBSTRING_INDEX(SUBSTRING_INDEX(SUBSTRING_INDEX(SUBSTRING_INDEX(target_url, '/', 3), '://', -1), '/', 1), '?', 1) AS domain

但是这段代码的结果是不正确的

'www.abc.com' 'lalala.one.google.com' 'two.one.test.com'

我需要得到最后两个词,分隔符是点。

我需要这个结果

'abc.com' 'google.com' 'test.com'

标签: mysqlurltext-parsing

解决方案


subtring()substring_index():_

set @url = 'https://stackoverflow.com/questions/57937363/how-to-remove-subdomain-from-url-in-mysql';
select substring_index(substring_index(substring(@url, locate('://', @url) + 3), '/', 1), '.', -2) as domain

请参阅演示
结果:

domain
-----------------
stackoverflow.com

推荐阅读