access数据库排序问题,谁来帮帮忙呀?

zhuangjunx 2007-08-13 10:36:41
access数据库
title abid email
--------------------------------
abc aa abc@dk.com
aaa ddd abc@dk.com
122 skl sa@dk.com
sll ksk sdfk@kk.com
aas kll abc@dk.com

怎么按邮箱数量最大的排最前面??
邮箱记录总数量。
...全文
392 23 打赏 收藏 转发到动态 举报
写回复
用AI写文章
23 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhuangjunx 2007-08-14
  • 打赏
  • 举报
回复
用这个不会按出现次数最多的记录排序。。
pippe 2007-08-14
  • 打赏
  • 举报
回复
SORRY,忘记写group by了

select *
from a=yourtable,b=(select email,emailcount=count(email) from yourtable group by email)
where a.email=b.email
group by emailcount desc,email;
yan53125 2007-08-14
  • 打赏
  • 举报
回复
支持楼上,不过不用分组,可以用count么?楼上的取出的是每个email的出现次数?还是其他??


select title, abid, A.email
from yourtable AS A
right join
(select email
from yourtable
group by email
order by email desc) AS B
on A.email = b.email
这个应该差不多,只是我不太会右外连接
zhuangjunx 2007-08-14
  • 打赏
  • 举报
回复
FROM 子句语法错误
pippe 2007-08-14
  • 打赏
  • 举报
回复
select *
from a=yourtable,b=(select email,emailcount=count(email) from yourtable)
where a.email=b.email
group by emailcount desc,email;
zhuangjunx 2007-08-14
  • 打赏
  • 举报
回复
相同邮箱数量最多的不会排在第一位呀。
jobine 2007-08-14
  • 打赏
  • 举报
回复
sorry.写错了。

select title, abid, A.email
from yourtable AS A
right join
(select email
from yourtable
group by email
order by email desc) AS B
on A.email = b.email
jobine 2007-08-14
  • 打赏
  • 举报
回复
select email, count(email)
from yourtable
order by count(email)
jobine 2007-08-14
  • 打赏
  • 举报
回复
-_____-你仔细看看我的语句取的就是全部数据。
zhuangjunx 2007-08-14
  • 打赏
  • 举报
回复
我要的不是取一条,,是全部数据还是要取出来,只是按邮箱数量最多的排第一位,以此排列下来。。
jobine 2007-08-14
  • 打赏
  • 举报
回复
我到access上面试过了,完全可行的。
zhuangjunx 2007-08-14
  • 打赏
  • 举报
回复
不行呀,我用的是access数据库
zhuangjunx 2007-08-14
  • 打赏
  • 举报
回复
试试。
shilei831115 2007-08-14
  • 打赏
  • 举报
回复
嘎嘎 麻烦以后大家试试再跟帖 免得误导 处学者
zhuangjunx 2007-08-14
  • 打赏
  • 举报
回复
SELECT A.title, A.abid, A.email, b.emailcount
FROM table1 AS A right JOIN (SELECT email, count(email) as emailcount FROM table1 GROUP BY email) AS B ON A.email=b.email
order by emailcount desc

这样搞定了,谢谢
jobine 2007-08-14
  • 打赏
  • 举报
回复
SELECT A.title, A.abid, A.email, b.emailcount
FROM table1 AS A right JOIN (SELECT email, count(email) as emailcount FROM table1 GROUP BY email) AS B ON A.email=b.email
order by emailcount desc
zhuangjunx 2007-08-14
  • 打赏
  • 举报
回复
FROM 子句语法错误

还是这错误
pippe 2007-08-14
  • 打赏
  • 举报
回复
汗,email有两个,又忘记写表名了

select *
from a=yourtable,b=(select email,emailcount=count(email) from yourtable group by email)
where a.email=b.email
group by b.emailcount desc,a.email;
zhuangjunx 2007-08-13
  • 打赏
  • 举报
回复
这样也不行的。
jobine 2007-08-13
  • 打赏
  • 举报
回复
select title, abid, email, count(email) as emailcount
from yourtable
order by emailcount
加载更多回复(3)

62,074

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧