题目
给定一个 Weather 表,编写一个 SQL 查询,来查找与之前(昨天的)日期相比温度更高的所有日期的 Id。
+---------+------------------+------------------+
| Id(INT) | RecordDate(DATE) | Temperature(INT) |
+---------+------------------+------------------+
| 1 | 2015-01-01 | 10 |
| 2 | 2015-01-02 | 25 |
| 3 | 2015-01-03 | 20 |
| 4 | 2015-01-04 | 30 |
+---------+------------------+------------------+
例如,根据上述给定的 Weather 表格,返回如下 Id:
+----+
| Id |
+----+
| 2 |
| 4 |
+----+
代码模板:
# Write your MySQL query statement below
分析
用INNER JOIN来筛选,条件是温度比之前的高,并且两天相差一天。
解答
# Write your MySQL query statement below
select w1.Id from Weather w1
Inner JOIN Weather w2 on
w1.Temperature > w2.Temperature
and DATEDIFF(w1.RecordDate, w2.RecordDate) = 1;

本文探讨了如何使用SQL查询解决一项具体挑战:找出比前一天温度高的所有日期的ID。通过使用INNER JOIN和DATEDIFF函数,我们能有效地筛选出符合条件的数据。
584

被折叠的 条评论
为什么被折叠?



