文章

LeetCode Rising Temperature

Problem

Given a Weather table, write a SQL query to find all dates’ Ids with higher temperature compared to its previous (yesterday’s) dates.

1
2
3
4
5
6
7
8
+---------+------------+------------------+
| Id(INT) | Date(DATE) | Temperature(INT) |
+---------+------------+------------------+
|       1 | 2015-01-01 |               10 |
|       2 | 2015-01-02 |               25 |
|       3 | 2015-01-03 |               20 |
|       4 | 2015-01-04 |               30 |
+---------+------------+------------------+

For example, return the following Ids for the above Weather table:

1
2
3
4
5
6
+----+
| Id |
+----+
|  2 |
|  4 |
+----+

即找到与前一日相比温度升高的条目Id。

MySQL

1
2
3
# Write your MySQL query statement below
SELECT w1.Id FROM Weather w1, Weather w2 WHERE w1.Temperature > w2.Temperature AND datediff(w1.date,w2.date) =1;

分析

主要是掌握MySQL的日期函数。

本文由作者按照 CC BY 4.0 进行授权