作者aaroms (高雄人看高熊球队)
看板PHP
标题Re: [请益] php 完成条件时 时间判断
时间Sun May 22 03:59:32 2011
※ 引述《misciha (D-Generation X)》之铭言:
: 你好
: 我有以下资料栏位
: (原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)
: 谢谢指教
试了一下
算出以rmd_id为准的rank做子查询
如此可取所有rank为第三的资料
SELECT rmd_id ,rank , id_ok_time
FROM
(
SELECT * ,IF(`rmd_id` = @prev,@rownum :=@rownum + 1 , @rownum := 1) as rank,
@prev := `rmd_id`
FROM {table}
JOIN (SELECT @rownum := NULL, @prev := null) as R
ORDER BY rmd_id,id_ok_time
)
WHERE rank = 3
ORDER BY rmd_id
*update:
每次新增会员时可以检查该会员的rank是否为三即可达到你的要求
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 114.37.22.31
※ 编辑: aaroms 来自: 114.37.22.31 (05/22 04:08)