千锋教育-做有情怀、有良心、有品质的职业教育机构

手机站
千锋教育

千锋学习站 | 随时随地免费学

千锋教育

扫一扫进入千锋手机站

领取全套视频
千锋教育

关注千锋学习站小程序
随时随地免费学习课程

当前位置:首页  >  技术干货  >  数据库面试题:点击日志表——黑产行为

数据库面试题:点击日志表——黑产行为

来源:千锋教育
发布人:wjy
时间: 2022-06-07 11:51:00 1654573860

 数据库面试题:点击日志表——黑产行为

数据库面试题:击日志表黑产行为

-- 建表
drop table if exists tencent_video_click;
create table if not exists tencent_video_click(
vuid int,
`date` date, -- 点击日期
`time` int comment '点击时间时间戳格式',
platform int default 21
);
select unix_timestamp('2021-03-01 00:00:00'); -- 1614528000
-- 插入造的数据
insert into tencent_video_click values
(1, '2021-03-01', 1614528000, 21),
(1, '2021-03-01', 1614528001, 22),
(1, '2021-03-01', 1614528001, 21),
(2, '2021-03-01', 1614528004, 21),
(3, '2021-03-01', 1614528000, 21),
(2, '2021-03-01', 1614528005, 21),
(3, '2021-03-01', 1614528000, 22),
(4, '2021-03-01', 1614528007, 21),
(4, '2021-03-01', 1614528009, 22),
(4, '2021-03-01', 1614528010, 21);

-- 要求:已知同一用户在移动端连续点击两次时间间隔不高于2秒,则可能产生黑产行为
-- 筛选出213月份所有有可能为黑产行为的点击记录
/*
分析:
从同一用户在移动端连续点击两次时间间隔不高于2秒这句话中可以得知 我们需要得到同一用户在移动端上下两次点击时间的数据并进行关联
    因此需要使用自连接查询 连接条件是平台一样 用户一样  筛选条件是两者时间相减不高于2
    然后在此基础上再加上时间的筛选
*/
select t1.*, t2.time as `第二次点击` from tencent_video_click as t1 join tencent_video_click as t2
on t1.vuid=t2.vuid and t1.platform=t2.platform
where t2.time-t1.time <= 2 and t2.time-t1.time > 0 and year(t1.date) = 2021 and month(t1.date) = 3;

/*
vuid date time platform 第二次点击
2021-03-01 1614528000 21 1614528001
2021-03-01 1614528004 21 1614528005
*/

 更多关于python培训的问题,欢迎咨询千锋教育在线名师。千锋教育拥有多年IT培训服务经验,采用全程面授高品质、高体验培养模式,拥有国内一体化教学管理及学员服务,助力更多学员实现高薪梦想。

tags:
声明:本站稿件版权均属千锋教育所有,未经许可不得擅自转载。
10年以上业内强师集结,手把手带你蜕变精英
请您保持通讯畅通,专属学习老师24小时内将与您1V1沟通
免费领取
今日已有369人领取成功
刘同学 138****2860 刚刚成功领取
王同学 131****2015 刚刚成功领取
张同学 133****4652 刚刚成功领取
李同学 135****8607 刚刚成功领取
杨同学 132****5667 刚刚成功领取
岳同学 134****6652 刚刚成功领取
梁同学 157****2950 刚刚成功领取
刘同学 189****1015 刚刚成功领取
张同学 155****4678 刚刚成功领取
邹同学 139****2907 刚刚成功领取
董同学 138****2867 刚刚成功领取
周同学 136****3602 刚刚成功领取
相关推荐HOT