【发布时间】:2014-10-14 04:03:27
【问题描述】:
我有一个表,我需要删除所有具有相同 url 和 parent_url 的行。 该表包含以下列:
id, time, url, parent_url, source
重复如下:
1,12-24-2014,asdf.com, http://repeat.com, email
1,12-24-2014,zxzy.com, http://secondrepeat.com, email
2,12-26-2014,asdf.com, http://repeat.com, email
3,12-26-2014,zxzy.com, http://secondrepeat.com, email
4,12-27-2014,asdf.com, http://repeat.com, email
这些需要减少到以下 2 行(已删除 3 行):
1,12-24-2014,asdf.com, http://repeat.com, email
1,12-24-2014,zxzy.com, http://secondrepeat.com, email
我一直在尝试使用 for 循环,并且一直在寻找遵循这种格式的查询,但没有找到任何可以说明如何完成此计数的任何内容。
例如,我尝试做
DELETE FROM scraper WHERE (url, parent_url) IN (SELECT(url, parent_url) FROM scraper GROUP BY url, parent_url having count(*) > 1);
【问题讨论】:
-
你给出的这些例子明显不那么复杂,不是吗?例如,他们没有提供基于
multiple匹配的删除信息。
标签: sql postgresql