197. Rising Temperature (Easy)

https://leetcode.com/problems/rising-temperature/

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

+---------+------------------+------------------+
| 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 |
+---------+------------------+------------------+

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

+----+
| Id |
+----+
|  2 |
|  4 |
+----+

Solutions

SELECT 
    Weather.Id
FROM
    Weather
        JOIN
    Weather w ON DATEDIFF(Weather.RecordDate, w.RecordDate) = 1
        AND Weather.Temperature > w.Temperature
;

Incorrect Solutions

select 
    distinct a.Id
from 
    Weather as a, Weather as b
where 
    a.RecordDate > b.RecordDate and a.Temperature > b.Temperature;

References

Copyright © iovi.com 2017 all right reserved,powered by GitbookLast Modification: 2020-07-03 00:26:46

results matching ""

    No results matching ""