首页 / Mysql / SQL面试题:求时间差之和(有重复不计)

SQL面试题:求时间差之和(有重复不计)

面试某某公司BI岗位的时候,面试题中的一道sql题,咋看一下很简单,写的时候发现自己缺乏总结,没有很快的写出来。

面试某某公司BI岗位的时候,面试题中的一道sql题,咋看一下很简单,写的时候发现自己缺乏总结,没有很快的写出来。

题目如下:

求每个品牌的促销天数

表sale为促销营销表,数据中存在日期重复的情况,例如id为1的end_date为20180905,id为2的start_date为20180903,即id为1和id为2的存在重复的销售日期,求出每个品牌的促销天数(重复不算)

表结果如下:

最终结果应为

brand all_days
nike 13
oppo 12
vivo 18

建表语句

方式1:

利用自关联下一条记录的方法

运行结果

该方法对本题中的表格有效,但对于有id不连续的品牌的记录时不一定适用。

方式2:

运行结果

其中条件

可以换成

结果同样正确

用分析函数同样可行的,自己电脑暂时没装oracle,用的mysql写的。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持我是攻城狮。

本文来自网络,不代表我是攻城狮立场,转载请注明出处:https://www.54gcs.cn/sql/mysql/5524.html

helwo作者

上一篇
下一篇

为您推荐

发表评论

联系我们

联系我们

在线咨询: QQ交谈

邮箱: web@5vo.cn

工作时间:周一至周五,9:00-17:30,节假日休息
关注微信
微信扫一扫关注我们

微信扫一扫关注我们

手机访问
手机扫一扫打开网站

手机扫一扫打开网站

返回顶部
跳至工具栏