V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  yidinghe  ›  全部回复第 3 页 / 共 139 页
回复总数  2765
1  2  3  4  5  6  7  8  9  10 ... 139  
@yidinghe 计算用户使用时长可以简化,不用 union all ,下面是一个例子:

select
sum(
case
when end_time is null then TIMESTAMPDIFF(SECOND, start_time, now())
else then TIMESTAMPDIFF(SECOND, start_time, end_time)
end
) as duration
from acc_records
where user_id=?
这个设计的核心要素是用户的每次使用时段,所以必须设计一个使用时段表。使用时段表需要详细记录用户每次的使用时段,当用户有疑问时,你要拿这些记录出来进行核对。

使用时段表包含下面的主要属性:用户 ID 、开始时间、计费权重(如果有的话)、结束时间(为空表示正在计费中)、时长(结束时间为空时这个字段也为空)

开始计时:使用时段表新增一条记录,记录用户 ID 和开始时间。

结束计时:在使用时段表中找到未结束的记录,填入当前时间作为结束时间,以及时长。

如何实时计算用户的使用时长:选取所有已结束的记录,用 union all 拼接上那条未结束的记录(其时长为当前时间减去开始时间),然后对时长求和即可。

如果你不想扫描太多记录,那么可以给用户添加冗余字段:每次结束计时后,将所有已结束的记录合计一下,存入用户表。那么实时计算用户的使用时长,就只要从用户表取一条用户记录,再从使用时段表取一条或零条未结束记录即可。
78 天前
回复了 szj 创建的主题 生活 过年好平淡啊
说明你已经成熟了,开始不自觉地以旁观者的角度去审视社会。https://i.imgur.com/L62ZP7V.png
问你本地社区比较好,不同国家汇率以及品牌定价都不同,“海外”这种词恐怕太虚了。
85 天前
回复了 xuecat 创建的主题 MySQL 求助一个 SQL 优化
@xuecat 耗时 double 的原因在于 UNION ALL ,所以即便用 WITH 提取出来,恐怕也无济于事。
Hibernate 的初衷就是想偷懒,想回避关系数据库,结果到了最后,发现在 Hibernate 体系里面学那么多、写那么多,依旧耗费大量精力,而且还不如一条手写 SQL 搞定。

https://i.v2ex.co/z07nEGbZ.png
86 天前
回复了 hepin1989 创建的主题 程序员 大家 Java 21 的 虚拟线程用起来了吗?
虚拟线程的好处,一是降低操作系统负担,方便虚拟机自行根据硬件资源调整;二是因为减少了异步代码,可以更方便的使用 ThreadLocal 等工具。总之,它在设计编码方面带来的负担降低是非常显著的。
86 天前
回复了 wyhaya 创建的主题 分享创造 Dataflare: 一款简单轻量的数据库管理器
对数据库工具我有个要求,就是界面要紧凑,因为不论是表格还是 SQL 编辑,都希望一个屏幕看到的东西足够多,减少滚动切换。而松散的界面设计一定是会降低工作效率的。所以我更偏好密密麻麻的界面。举两个例子:

https://www.quest.com/images/patterns/ZigZag/6-column/toad-for-oracle-team-coding.jpg

https://fishcodelib.com/images/Snap49.png
那个穿山甲挺可爱的 :)
注销账户这种行为是否意味着你自愿放弃了售后权利?
87 天前
回复了 echo0x000001 创建的主题 发音 你们怎么读 " Linux "
87 天前
回复了 wmui 创建的主题 互联网 网站的免责声明真的有法律效应吗
通义:在中国,根据《中华人民共和国网络安全法》等相关法律法规,网站运营者对于其平台上的信息内容负有一定的管理和审核义务,即使有免责声明,也不能豁免其应当承担的法律责任。例如,如果明知或应知网站存在违法信息而不采取必要措施,则仍需依法承担责任。

文心:根据相关法律法规和司法解释,网站所有者应当对其网站上的内容承担相应的法律责任。如果网站内容侵犯了他人的合法权益,如著作权、隐私权等,那么网站所有者可能需要承担相应的法律责任。

Google Bard:答案是否定的。根据我国《民法典》第 180 条规定,网络服务提供者应当对其提供的网络服务内容的真实性、合法性进行审查,并依法承担相应的责任。因此,网站所有者即使在网站上发布了类似的免责声明,但如果网站上的内容侵犯了他人合法权益,网站所有者仍然要承担相应的法律责任。

---

Google 所谓民法典的描述是胡扯的。《民法典》第一百八十条:因不可抗力不能履行民事义务的,不承担民事责任。法律另有规定的,依照其规定。
87 天前
回复了 huangpingdong 创建的主题 阅读 分享一个禅宗公案:谁缚汝
@pppanda 苦恼和焦虑这些东西本就唯心。这个对话中,三祖代表的是唯物。他通过让沙弥看清“无人缚”这个客观事实,帮助沙弥从唯心的痛苦中走出来。
业界并没有广泛使用模块化的开发方式,因为它可能破坏项目对以前的库的使用方式,即便有加参数或其他手段来绕过,维护起来也很复杂。
87 天前
回复了 v2zzzzz 创建的主题 Java 探讨一下 Java 系的系统监控
小公司没必要付那么高的基础设施成本。如果你们公司主要都是些负载不高的服务,那么 grafana 之类的确实可有可无。如果出了问题,重启一下服务就好。关于日志,只要抛出异常的时候多带点信息,大部分的错误光看包含堆栈的这一条日志就能定位问题,无需链路。
在你的应用当中直接添加 jdom 依赖并使用你想要的版本即可。你的应用会优先使用直接依赖所指定的版本。
88 天前
回复了 yuan321 创建的主题 问与答 有那种真正对颈椎病有效的枕头吗?
我觉得颈椎病易发人群需要的,不是睡觉时候的“恢复”,而是平时就能放松肌肉的工具。
有第六台设备的时候,取消现有其中一台设备的登录就可以了,通常是不再使用的老旧设备。
90 天前
回复了 mylastfire 创建的主题 生活 兄弟们,过年这几天有啥打算吗?
呆家里养身
1  2  3  4  5  6  7  8  9  10 ... 139  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   3651 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 40ms · UTC 04:26 · PVG 12:26 · LAX 21:26 · JFK 00:26
Developed with CodeLauncher
♥ Do have faith in what you're doing.