LeetCode:197. 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 |
+—-+

Answer:
思路:一表当2表用。注意TO_DAYS(),日期直接相减是有问题的(详细看这个)

# Write your MySQL query statement below
SELECT
    A2.Id 
FROM
    weather AS A1,
    weather AS A2 
WHERE
    TO_DAYS( A1.RecordDate ) = TO_DAYS( A2.RecordDate ) - 1 
    AND A1.Temperature < A2.Temperature
发布了43 篇原创文章 · 获赞 27 · 访问量 3万+

猜你喜欢

转载自blog.csdn.net/SCUTJcfeng/article/details/80021617