Oracle / SQL – 按日期随着时间的推移分组项目
发布时间:2020-12-12 15:13:18 所属栏目:百科 来源:网络整理
导读:嗨,我有一个“小部件”表,其中包含以下列:小部件,动作,时间戳.我们想要做的是将特定日期之前每天被拒绝的所有小部件拉多于一次.所以这里是一个示例表 widget action timestamp_-------------------------------------------type1 reject 2011-05-10 08:00:0
嗨,我有一个“小部件”表,其中包含以下列:小部件,动作,时间戳.我们想要做的是将特定日期之前每天被拒绝的所有小部件拉多于一次.所以这里是一个示例表
widget action timestamp_ ------------------------------------------- type1 reject 2011-05-10 08:00:00 type1 reject 2011-05-10 09:00:00 type1 reject 2011-05-10 09:30:00 type2 reject 2011-05-11 09:30:00 type3 reject 2011-05-11 09:30:00 type1 reject 2011-05-11 09:30:00 type1 reject 2011-05-11 09:30:00 type2 reject 2011-05-12 10:30:00 type2 reject 2011-05-12 12:30:00 type3 reject 2011-05-12 12:30:00 所以我希望看到这两种礼貌之一的结果…. 在x和y之间,有两个窗口小部件在一天内被多次拒绝 这会看到type1在一天被拒绝了一次,因为type2,所以计数是:2 要么 显示每个窗口小部件及其被拒绝的日期不止一次以及多少次.例.. widget date count --------------------------------- type1 2011-05-10 3 type1 2011-05-11 2 type2 2011-05-12 2 这可能是首选输出…但是如何? 提前致谢! 这将给你的输出:SELECT Widget,to_char(timestamp_,'YYYY-MM-DD'),Count(Widget) FROM Widget WHERE timestamp_ BETWEEN to_date('YYYY-MM-DD HH24:MI:SS','%date1%') AND to_date('YYYY-MM-DD HH24:MI:SS','%date2%') AND action LIKE 'reject' GROUP BY Widget,'YYYY-MM-DD') HAVING Count(Widget) > 1; 当然,您将要替换日期变量. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |