「力扣数据库」197. 上升的温度(第七天)

题目

题目难度:简单

给定一个 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

解题

datediff(日期1, 日期2)

  • 得到的结果是日期1与日期2相差的天数。
  • 如果日期1比日期2大,结果为正;如果日期1比日期2小,结果为负。

解题过程:

  1. 先使用自身连接
  2. 查询两个查询条件:
    (1)W1温度 < W2.温度 //后一天大于前一天
    (2)日期差1
SELECT W2.Id
FROM Weather as W1, Weather as W2
WHERE DATEDIFF(W1.RecordDate,W2.RecordDate)=-1 AND
      W1.Temperature<W2.Temperature;
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章