2010-05-03 42 views
4

我有一个非常大的数据库,其中一个表中有大约120万条记录。在将数据分成几个表(可能规范化它)之前,我已经清理了此表中的数据。该表的列如下所示:“id(主键),userId,Url,Tag”。这基本上是美味网站数据集的一个子集。正如我所说的,每一行都有一个id,userID一个url和唯一的“一个”标签。例如,美味网站中的书签由单个网址的多个标签组成,这对应于我的数据库的多行。例如:在mysql中使用COUNT选择

 
"id"; "user" ;"url" ;"tag" 
"38";"12c2763095ec44e498f870ed67ee948d";"http://forkjavascript.org/";"ajax" 
"39";"12c2763095ec44e498f870ed67ee948d";"http://forkjavascript.org/";"api" 
"40";"12c2763095ec44e498f870ed67ee948d";"http://forkjavascript.org/";"javascript" 
"41";"12c2763095ec44e498f870ed67ee948d";"http://forkjavascript.org/";"library" 
"42";"12c2763095ec44e498f870ed67ee948d";"http://forkjavascript.org/";"rails"

我需要一个查询来计算标记用于url的次数。 谢谢你的帮助

回答

4

此查询应该为你工作:

SELECT tag, url, count(tag) FROM table GROUP BY tag, url 

没有测试它为你虽然。

-1

这是你在找什么?

SELECT COUNT(tag) FROM TABLENAME 
WHERE tag='sometag' 
-1

我认为它实际上更像SELECT tag, COUNT(tag) FROM TABLENAME WHERE URL='someurl' GROUP BY tag

+0

无我NNED所有urls.They数以百万计.... – Hossein 2010-05-03 21:29:31