首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >使用尾随斜杠选择接近重复的

使用尾随斜杠选择接近重复的
EN

Stack Overflow用户
提问于 2014-02-17 19:41:16
回答 3查看 413关注 0票数 0

我有一个很大的URL数据库,还有一个拖尾斜杠的副本。我希望找到那些以尾随斜杠结尾的urls的重复值,但不希望在拖尾斜杠之后找到带有文本的urls,例如http://www.google.com/asdfasdf

代码语言:javascript
复制
CREATE TABLE link_info (
  id INT,
  url VARCHAR(32)
);

INSERT INTO link_info VALUES
(1, 'http://www.yahoo.com/'),
(2, 'http://www.google.com/'),
(3, 'http://www.google.com/asdfasdf'),
(4, 'http://www.yahoo.com');

我正在尝试选择不带尾斜杠的重复项,但是它选择http://www.google.com/asdfasdf作为副本。

代码语言:javascript
复制
SELECT DISTINCT TRIM(TRAILING '/' FROM url) url
FROM link_info

我本来希望使用regexp的,但那不管用。

代码语言:javascript
复制
SELECT DISTINCT TRIM(TRAILING REGEXP('[/]$') FROM url) url
FROM link_info
EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2014-02-17 19:58:08

您的查询将返回修剪过的每个url。我想你需要这样的东西:

代码语言:javascript
复制
SELECT TRIM(TRAILING '/' FROM url) trimmed_url
FROM link_info
GROUP BY trimmed_url
HAVING COUNT(DISTINCT url)>1

请看小提琴这里

编辑

如果没有确切的重复项,并且只想保持行不带尾斜杠,则可以使用以下delete查询:

代码语言:javascript
复制
DELETE l1.*
FROM
  link_info l1 INNER JOIN link_info l2
  ON l1.url = CONCAT(l2.url, '/')

请看小提琴这里。请注意,此查询将只删除带有尾斜杠的复制的yahoo.com,但不会删除www.google.com/中的尾斜杠。

票数 2
EN

Stack Overflow用户

发布于 2014-02-17 19:56:57

你可以用这个

代码语言:javascript
复制
 SELECT  TRIM(TRAILING '/' FROM url) url
 FROM link_info
 group by SUBSTRING_INDEX(url, '.com', 1)

但是,这只在具有.com的链接中起作用,所以对于.net.something,您可以添加一个联合。

这里的演示

票数 1
EN

Stack Overflow用户

发布于 2014-02-17 20:12:18

尝试:

代码语言:javascript
复制
select *
  from link_info
 where url in
       (select url
          from link_info
         group by case
                    when replace(url, substring_index(url, '.', 1), '') like '%/' then
                     replace(url, substring_index(url, '.', 1), '')
                    else
                     concat(replace(url, substring_index(url, '.', 1), ''),
                            '/')
                  end
        having count(*) > 1)
票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/21837902

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档