创建表:
插入数据:
INSERT mysql.battery
(name
) VALUES('Battery1'),('Battery2'),('Battery3'),('Battery4'),('Battery5');
插入日志数据:
INSERT mysql.record
VALUES (1,2),(1,3),(1,2),(2,10),(2,3);
结果:
日志表数据表示电池1分别被充电2小时、3小时、1.5小时,电池2分别被充电10小时、3小时
没有充电记录,或没有被一次性充电超过8小时的电池都是有问题的电池(可知只有电池2是没有问题的)
我能首先想到的是使用一个左外连接找出没有日志的电池
SELECT * FROM mysql.battery b LEFT JOIN mysql.record r ON b.id
= r.id
;
可以看出Battery3、Battery4、Battery5没有充电记录所以是有问题的,但Battery1没有一次充电超过8小时,所以也是有问题的,若想简便的将以上有问题的电池都找出来,不使用存储过程之类的话该如何实现呢
版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。