SQL Server 每日一题--解析天气预报员

时间:2022-07-24
本文章向大家介绍SQL Server 每日一题--解析天气预报员,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

这道题主要考察 DATEDIFF 的用法, DATEDIFF 主要用于计算两个日期的差。通过题目可知我们可以通过将 weather 与自身相结合,并使用 DATEDIFF() 函数。那么这道题有两种主要的解决方法:

  1. 利用 from table_name1 , table_name2
  2. 利用 inner join 下面我们来看一下这两种方法的使用。

零、from table_name1 , table_name2

select w2.RecordDate from Weather as w1,Weather as w2
where datediff(dd,w1.RecordDate,w2.RecordDate)=1 and w1.Temperature<w2.Temperature

一、 inner join

select b.RecordDate from Weather a inner JOIN Weather b ON DATEDIFF(day, a.RecordDate, b.RecordDate)=1 and a.Temperature<b.Temperature

我个人建议使用第二种方法 inner join 来解决这个问题,因为第一种方法是一种过时的语法,另一方面根据我在实践中的经验来看,第一种方法的效率会低于第二种方法。