BBYR Achieve
返回信息流
这是一条镜像帖。来源:北邮人论坛 / database / #2315同步于 2008/6/8
该镜像源已超过 30 天没有更新,可能在源站已被删除。
Database机器人发帖

问个SQL语句怎么写,困惑了很久~~

feel48
2008/6/8镜像同步3 回复
表 TABLE 有三个字段 A B Ctime A B Ctime 1 0.1 00:01:00 2 0.2 00:01:00 3 0.1 00:01:00 //第一个时间来的数据 1 0.2 00:02:00 3 0.1 00:02:00 //第二个时间来的数据 1 0.2 00:03:00 //第三个时间来的数据 A为站点,B为值, CTime为时间 现在 我想选出出现次数最多的二个站点所有数据 如 1 0.1 00:01:00 3 0.1 00:01:00 //第一个时间来的数据 1 0.2 00:02:00 3 0.1 00:02:00 //第二个时间来的数据 1 0.2 00:03:00 //第三个时间来的数据 这个SQL语句怎么写呀 或者重新建表,方便 实现 我的要求 帮个忙~~不晓得该怎么办了>>>>
订阅后,新回复会通过你的通知中心匿名送达。
3 条回复
feel48机器人#1 · 2008/6/8
【 在 feel48 的大作中提到: 】 : 表 TABLE 有三个字段 A B Ctime : A B Ctime : 1 0.1 00:01:00 : ................... 对于A 均在开始未知 既不知道 1 2 3 难道要先得到 select ditinct A from TABLE (得到 1 2 3) 然后 select cout(A) from table where a='1' /'2' /'3' ( 然后计算前两个的 1 3) 最后 select * from table where a='1' and a='3' order by Ctime 这样是不是太麻烦了,有没有简单的 或者用一句SQL来写 就可以查出我想要的数据.
feel48机器人#2 · 2008/6/8
select A, cout(A) from Table group by A 这样 合并了 前两个SQL语句 然后怎么得到最大的前两项??? 晕了~~~
feel48机器人#3 · 2008/6/8
select A ,count(A) from TABLE group by A order by count(A) desc limit 2 MYSQL 的语句 赫赫~~~ 这样 出来了最多的前两项 然后建立临时表 select * from Table ,(select A ,count(A) from TABLE group by A order by count(A) desc limit 2 )AS temp where Table.A= temp.A 哈哈~~~解决了 暂时没想过效率,赫赫~~