我有一个非常大的数据库,其中一个表中有大约120万条记录。我已经清理了表中的数据,然后将其分成几个表(可能正常化它)。该表的列如下所示:“id(主键),userId,Url,Tag”。这基本上是美味网站数据集的一个子集。正如我所说的,每一行都有一个id,userID一个url和唯一的“一个”标签。例如,美味网站中的书签由单个网址的多个标签组成,这对应于我的数据库的多行。例如: “id”; “用户”, “URL”, “标签” “38”; “12c2763095ec44e498f870ed67ee948d”; “http://forkjavascript.org/ ”“ AJAX” “39”; “12c2763095ec44e498f870ed67ee948d”; “http://forkjavascript.org/ ”“ API” “40”;“12c2763095ec44e498f870ed67ee948d “;” http://forkjavascript.org/ “” JavaScript的 “ ”41“, ”12c2763095ec44e498f870ed67ee948d“;” http://forkjavascript.org/ “;” 图书馆 “ ”42“, ”12c2763095ec44e498f870ed67ee948d“;” http://forkjavascript.org/ “;” 轨道”根据mysql数据库中列的数量删除某些行
如果我想看每个“不同”网址的标签数量我运行下面的查询。
SELECT DISTINCT网址,标签,COUNT(标签)为 “TagCount” FROM urltag GROUP BY网址
现在我想删除与他们相关的网址不到5个标记的记录。 有谁知道我必须运行的实际查询? 谢谢
运行此查询时出现错误: “您无法在FROM子句 – Hossein 2010-05-03 15:41:32
中指定目标表'urltag'进行更新,在这种情况下,您可能无法在mysql中执行此操作。我认为ms-sql可以处理这种情况。我想你唯一的选择就是在2个查询中完成它,然后获取count(tag)<5的不同url,然后在这些urls上删除查询。 – oedo 2010-05-03 18:23:06
感谢您的信息 – Hossein 2010-05-03 20:59:39