首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    字节华为大数据面试SQL-合并日期重叠的活动

    一、题目 已知有表记录了每个大厅的活动开始日期和结束日期,每个大厅可以有多个活动。...请编写一个SQL查询合并在同一个大厅举行的所有重叠的活动,如果两个活动至少有一天相同,那他们就是重叠的 样例数据 +----------+-------------+-------------+ | hall_id...维度 评分 题目难度 ⭐️⭐️⭐️⭐️⭐️ 题目清晰度 ⭐️⭐️⭐️⭐️⭐️ 业务常见度 ⭐️⭐️⭐️⭐️ 三、SQL 1.使用max()函数开窗,获得截止到当前行之前的活动最后日期 这里我们使用max...4行数据,开始时间为2023-01-18 结束时间为2023-01-25的活动与第一行的活动存在交叉,所以应该被合并,但是由于中间,其前一行的活动截止日期为2023-01-17,早于该行活动的开始日期而被判断为不应该被合并...的最小值作为活动开始日期,end_day的最大值作为活动结束日期,得到最终结果。

    19501

    php计算两个日期之间的间隔,避免导出大量数据

    探索 导出任务排队 这里讲讲实现思路: 前端请求服务端接口,告诉它要导出的日期范围、内容 服务端记录,插入队列 服务端监控脚本(可以用easyswoole等常驻型应用来完成),生成队列里的excel文件...,把任务标注成已经成功、对应的文件名 前端请求任务之后,间隔轮询后端,是否服务端导出完成,是的话则根据返回文件名下载文件 限制数据范围 这是比较重要的点,因为如果是不限制数据筛选范围,使用了排队导出的架构之后...,也可能导致机器资源占用过高(而且有被攻击的风险!)...我们可以根据筛选的日期范围,比如不能间隔超过50天,来限制,那么就要判断两个日期差距的日期了。...$diffDay = bcdiv($diffHour,24,2); // 差距的天数 if ($diffDay > 50){ echo "范围过大,不可间隔50天";die; } echo

    2.4K20

    Power Query里计算两个日期的间隔天数、年龄

    由于PQ里没有类似Excel中的Datedif函数,因此,在PQ中计算常用的间隔天数、年数(年龄),跟在Excel里有所不同。...- 计算间隔天数 - 小勤:Power Query里怎么计算两个日期的间隔天数? 大海:如果两个日期是标准格式的话,可以直接相减的。 小勤:但为什么这是有小数点的一堆乱七八糟的东西?...大海:在PQ里,日期相减得到的是一个区间(时间段),就是这两个日期之间隔了多长(多少天多少小时多少分钟多少秒)。 小勤:那怎么直接得到天数的结果?...大海:这个稍微繁琐一点儿,要按照最原始的通过日期计算的方法来求解,但理解了其实也不难。 小勤:那不是要先判断出生日期的月日是否比当前日期的月日大?感觉很麻烦。...大海:不需要啦,当你将日期转换为4位的文本时,文本的排序和再转换为数字的排序是一样的,比如“0513”比“0512”大,跟513比512大是一样的。

    7.6K40

    如何计算两个日期的间隔月份?这个年月处理方法,一定要get到! | Power Query实战

    6个日期时间常见问题总结 | Power Query实战》,里面有一个关于计算两个日期的间隔天数以及计算年龄(两个日期的间隔年数)的问题,但却没有关于两个日期的间隔月份数的情况。...那么,怎么计算间隔的月份呢?实际上,对于月份数的情况,是没有办法按天数折算的,毕竟每个月的天数都不一样,所以,Power Query里也没有Duration.TotalMonths之类的函数。...那么,难道要先计算间隔多少年,然后再加上月份差异?...示例如下图所示: 经过转换成连续的数字,要算两个日期之间的月份数,就相对简单了,只要对“日”进行比较即可:如果后面(大的)日期中的“日”大于前面(小的)日期中的“日”,则直接用年月序列相减;如果小于...([日期1])>= Date.Day([日期2])) 对于年月的处理,使用“年*12+月份”的计算方法,转换为连续的序列,是在数据处理过程中经常用到的一个方法,建议大家一定要get到,记住——当然,动手练一下

    3.3K41
    领券