读书人

请问一个SQL词句

发布时间: 2012-04-07 17:31:51 作者: rapoo

请教一个SQL词句
表:user
字段:email
email里面有很类型的邮箱.
怎么样写一个统计表里面各种邮箱的总数的SQL语句?

[解决办法]

VBScript code
select count(*) as emailcount from [user]
[解决办法]
不是很明白你的意思,但我猜,你的意思是不是说要统计,字段里面各邮箱地址后缀相同的邮箱地址总数,比如,有多少个是63.com的邮箱,有多少是hotmail.com的邮箱,有多少是126.com的邮箱,等等,是不是这个意思啦
[解决办法]
晕。。。更新慢了点,发错了。。。
[解决办法]
单独用SQL语句比较麻烦

dim a = "@126.com"
sql = "select count(id) from ta where instr(email,"&a&")>0" 'ACCESS数据库
sql = "select count(id) from ta where CHARINDEX("&a&",email)>0" 'SQL数据库

[解决办法]
那可能要用 like 了

[解决办法]
看看这个是不是符合你的要求:

select count(*)as EamilCount,email from [User] group by [email]
[解决办法]
探讨
引用:
看看这个是不是符合你的要求:

select count(*)as EamilCount,email from [User] group by [email]

谢谢这个不行的.每个邮箱都是不同的.

[解决办法]
sCount  email
3     sally.luo@163.com
464    sally.luo@scottwilson.com.cn
2     sally.luo@sina.com

这是我执行出来的结果.就是根据不同邮箱来统计的.呵~~
[解决办法]
VB code
读取出来再用ASP统计不行吗?dim rs,aMCount(),iMType,aMList(),sMail,n,iHaveiMType=-1set rs = Cn.execute("Select email From list")do until rs.Eof  sMail = lcase(split(rs(0),"@")(ubound(split(rs(0),"@"))))  iHave = -1  for n = 0 to iMCount    if aMList(n) = sMail then      iHave = n      exit for    end if  next  if -1 = iHave then    iMType = iMType + 1    redim Preserve aMCount(iMType)    redim Preserve aMList(iMType)    aMCount(iMType) = 1    aMList(iMType) = sMail  else    aMCount(iHave) = aMCount(iHave) + 1  end if  rs.movenextloopset rs = nothing
[解决办法]
如果注册的用户数达到一定程度,我们可以在数据库查询语句对其进行统计。

以下SQL语句能够统计出带某种类型后缀的email邮件注册量最大,及其排行顺序。

SELECT suffix_email, COUNT(suffix_email) AS email_count
FROM (SELECT SUBSTRING(email, CHARINDEX('@', email), 100) AS suffix_email
FROM user_table) temp_table
GROUP BY suffix_email
HAVING (COUNT(suffix_email) > 5)
ORDER BY email_count DESC
某网站对此排名后,发现排名前15的邮箱如下:
@163.com
@126.com
@sina.com
@yahoo.com.cn
@sohu.com
@hotmail.com
@tom.com
@21cn.com
@263.com
@vip.sina.com
@yahoo.com
@163.net
@qq.com
@gmail.com
@eyou.com

[解决办法]
如果注册的用户数达到一定程度,我们可以在数据库查询语句对其进行统计。

以下SQL语句能够统计出带某种类型后缀的email邮件注册量最大,及其排行顺序。

SELECT suffix_email, COUNT(suffix_email) AS email_count
FROM (SELECT SUBSTRING(email, CHARINDEX('@', email), 100) AS suffix_email
FROM user_table) temp_table
GROUP BY suffix_email
HAVING (COUNT(suffix_email) > 5)
ORDER BY email_count DESC
某网站对此排名后,发现排名前15的邮箱如下:
@163.com
@126.com
@sina.com
@yahoo.com.cn
@sohu.com
@hotmail.com
@tom.com
@21cn.com
@263.com
@vip.sina.com
@yahoo.com
@163.net
@qq.com
@gmail.com
@eyou.com


读书人网 >ASP

热点推荐