作者misciha (D-Generation X)
看板PHP
标题[请益] php 完成条件时 时间判断
时间Sat May 21 22:54:54 2011
你好
我有以下资料栏位
(原ID) (推荐人ID) (id注册成功日期)
id name pwd rmd_id id_ok_time
aa aaa 123 bbb 100/5/20 10:00
cc ccc 234 bbb 100/5/20 11:00
dd ddd 345 bbb 100/5/20 14:25
ee gggg 567 abn 100/4/30 13:23
.
.
.
欲找出 rmd_id 总数为三以上 且原ID注册成功的最晚时间
即rmd_id累积到三笔时 就达到条件 把达到条件的时间记录下来
(上例中 完成时间为100/5/20 14:25)
请问该如何撰写sql指令呢(我是用php+mysql)
谢谢指教
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.39.38.147
1F:推 mrbigmouth:SELECT `id_ok_time` FROM {TABLE} GROUP BY `rmd_id` 05/22 00:02
2F:→ mrbigmouth:HAVING COUNT(`rmd_id`)>2 ORDER BY `id_ok_time` DESC 05/22 00:03
3F:→ mrbigmouth:LIMIT 1 05/22 00:03
4F:推 mrbigmouth:看错了 原来不是要最晚时间...是达到条件的时间啊... 05/22 00:09
5F:→ mrbigmouth:那只能把全部时间取出来 用PHP去判定第三名是谁了 05/22 00:09
6F:→ mrbigmouth:把上句的LIMIT 1去掉 然後用PHP去比较资料这样 05/22 00:09
7F:→ mrbigmouth:其实也不用怎麽比较 把ORDER BY改ASC 直接抓第三row 05/22 00:11
8F:→ mrbigmouth:的资料就是了XD 05/22 00:11
9F:推 mrbigmouth:啊啊 我蠢了 这样可以直接用SQL达成嘛XD 05/22 00:13
10F:推 mrbigmouth:对不起 我好像从头到尾都在耍蠢 先去睡睡好了= = 05/22 00:21
11F:推 aaroms:SELECT `id_ok_time` FROM {TABLE} GROUP BY `rmd_id` 05/22 03:18
12F:→ aaroms:ORDER BY 'id_ok_time' ASC LIMIT 3 取第三笔 05/22 03:20
13F:→ aaroms:好像不对... 05/22 03:22