V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  zhuangjia  ›  全部回复第 31 页 / 共 45 页
回复总数  897
1 ... 27  28  29  30  31  32  33  34  35  36 ... 45  
2021 年 3 月 15 日
回复了 fiypig 创建的主题 随想 老铁们,我相亲回来了
祝好运,祝幸福
然而这并没有什么用
2021 年 3 月 12 日
回复了 ciddechan 创建的主题 Java 成为一名后端(看起来像 YX 文)
我好闲啊,来换下行。然并卵,还是看不懂。

前言 [不搭后语……]

看来真的有必要成为一名简单生产型的后端了,本文是不会讲必要性的! [ ?]
只是为了缓解一下最近郁闷的心情,写点东西让自己兴奋(就是那种虚伪积极)。 [就是说下文是在兴奋的状态下写出来的?]
同时看看大伙有没有排忧解难的妙招。

------

本白配过一些简单的入门环境: php/tomcat/express 。
本地 Debian 几句命令都没搞明白就想买 ECS,甚至还想用 XX 编可移植应用;
学过 “隔一段时间不用又忘记” 的那种 J 语言,每次 JDBC 就特别兴奋,仿佛打通了任督二脉。
curd 几句云关系型库,又试水 mgdb 。
知道有 MyBatis 这样的东西,但看上去还是石头,不是金子,差一个点石成金的理由~

------

(分开点,怕你们看不下去)

------

看 spring 文档那会也是一会进一会出,不要再让我看视频了(加速也没用,因为我没有两个显示器)。 [ ?]
redis 小说过了一下眼但不知道放在哪里才能收到稿费。 [这是啥意思?]
看着别人玩的消息队列什么 rabbitMQ 、什么高并发津津有味,羡慕嫉妒恨,这种羡慕应该是来自于自己的欲望过高。


身上的零碎知识像头发一样越长越长,不好看了就剪短剪光。
婚姻没有长时间去了解,所知道的爱情不能形成闭环。 [爱情的闭环是啥?]
在人人创作的时代,我就喜欢钓鱼,农村 /城镇出生,天然向往自然,向往自由自在(现在更像是懒的开荒)。

------

知道钓鱼的这项娱乐会浪费时间,
但拉下插件没有办法进入实际应用,无法接触流水案例, [这又是啥意思?]
达到了“所学无用”的究极巅峰,要不换点鱼饵继续钓鱼?
2021 年 3 月 12 日
回复了 sillydaddy 创建的主题 生活 问候应在年关后
所以赶紧约起来吧
2021 年 3 月 11 日
回复了 Macv1994 创建的主题 问与答 你们的手机都贴膜吗?
不贴,不过套壳了
2021 年 3 月 9 日
回复了 bwd1991 创建的主题 数据库 sql 统计一段时间内巡检次数 7 天内的不重复计算
@zhuangjia 尴尬,忘了回复不支持 markdown,这个格式看着愁人
2021 年 3 月 9 日
回复了 bwd1991 创建的主题 数据库 sql 统计一段时间内巡检次数 7 天内的不重复计算
借鉴了 MySQL 统计连续登录天数的思路和 sql,主要是这篇: https://zhuanlan.zhihu.com/p/32613190

生成测试数据

```
# 创建测试表
CREATE TABLE `tmp_test_lianxu_3` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`DeviceID` int(11) DEFAULT NULL,
`CreateTime` datetime DEFAULT NULL COMMENT '登录时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin;

# 生成测试数据

INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('1', '1', '2014-01-01 21:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('2', '1', '2014-01-02 15:37:57');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('3', '2', '2014-01-01 09:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('4', '2', '2014-01-02 09:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('5', '1', '2014-01-04 10:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('6', '1', '2014-01-05 12:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('7', '2', '2014-01-10 00:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('8', '2', '2014-01-11 13:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('10', '2', '2014-01-12 12:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('11', '1', '2014-01-08 06:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('12', '2', '2014-01-11 21:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('13', '2', '2014-01-15 21:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('14', '2', '2014-01-17 21:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('15', '2', '2014-01-19 21:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('16', '2', '2014-01-21 21:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('17', '2', '2014-01-26 21:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('18', '2', '2014-01-28 21:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('19', '2', '2014-01-30 21:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('20', '2', '2014-02-16 21:00:00');
INSERT INTO `test`.`tmp_test_lianxu_3` (`id`, `DeviceID`, `CreateTime`) VALUES ('21', '2', '2014-02-13 21:00:00');

```


sql 语句如下

```
SELECT
DeviceID,
# 检查每次巡检记录,如果最近一次巡检时间是 7 天前,那么有效巡检天数+1 ;如果是 7 天内,有效巡检天数+0 ;否则设置为 1
@cont_day := ( CASE
WHEN ( DATEDIFF(login_dt, @real_last_dt) > 7 ) THEN (@cont_day + 1)
WHEN ( DATEDIFF(login_dt, @real_last_dt) <= 7 ) THEN (@cont_day + 0)
ELSE 1
END
) AS days,
@last_did := DeviceID,
# 判断当前巡检是否为有效巡检(间隔 7 天),是则更新最后有效巡检时间;
# 如果不是则判断是否存在最后有效巡检时间,存在则不变,不存在则设置未当前巡检时间
@real_last_dt := ( CASE
WHEN ( DATEDIFF(login_dt, @real_last_dt) > 7 ) THEN login_dt
WHEN ( @real_last_dt > 0 ) THEN @real_last_dt
ELSE @last_dt
END
) as last_dt,
@last_dt := login_dt
FROM
( SELECT DeviceID, DATE(CreateTime) AS login_dt FROM tmp_test_lianxu_3
WHERE DeviceID=2 AND CreateTime BETWEEN "2014-01-01" AND "2014-01-31"
ORDER BY DeviceID, CreateTime ) AS t,
( SELECT @last_did := '', @last_dt := '', @real_last_dt := '', @cont_day := 0 ) AS t1

```

执行后结果如下:(其中 days 即为有效巡检天数)


DeviceID|days|@last_did := DeviceID|last_dt|@last_dt := login_dt
---|---|---|---|---
2|1|2||2014/1/1
2|1|2|2014/1/1|2014/1/2
2|2|2|2014/1/10|2014/1/10
2|2|2|2014/1/10|2014/1/11
2|2|2|2014/1/10|2014/1/11
2|2|2|2014/1/10|2014/1/12
2|2|2|2014/1/10|2014/1/15
2|2|2|2014/1/10|2014/1/17
2|3|2|2014/1/19|2014/1/19
2|3|2|2014/1/19|2014/1/21
2|3|2|2014/1/19|2014/1/26
2|4|2|2014/1/28|2014/1/28
2|4|2|2014/1/28|2014/1/30
2021 年 3 月 5 日
回复了 waiaan 创建的主题 问与答 element ui 有没有办法实现冻结行的功能?
如果你是想要同时固定列和表头的话,它是支持的
https://element.eleme.cn/#/zh-CN/component/table#gu-ding-lie-he-biao-tou
试用了,挺好用的。
2021 年 3 月 4 日
回复了 zhoudaiyu 创建的主题 程序员 问问大家关于软考的一些事
看了这个贴,昨天下单了《系统分析师》
2021 年 3 月 3 日
回复了 zhoudaiyu 创建的主题 程序员 问问大家关于软考的一些事
考了不吃亏
2021 年 3 月 1 日
回复了 woshipanghu 创建的主题 程序员 这几天你们的阿里云服务器还好吗?
又挂了……要提工单了
2021 年 3 月 1 日
回复了 woshipanghu 创建的主题 程序员 这几天你们的阿里云服务器还好吗?
周末挂了三次……
1 ... 27  28  29  30  31  32  33  34  35  36 ... 45  
关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2350 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 54ms · UTC 11:45 · PVG 19:45 · LAX 03:45 · JFK 06:45
♥ Do have faith in what you're doing.