本題的難點在於兩點: ① 如何對比時間 => 可以使用 datediff 函式進行對比
② 如何對比前一天的時間 => 使用交叉聯接
select
a.id
from
weather a
cross join weather b
where
datediff( a.recorddate, b.recorddate )= 1
and a.temperature > b.temperature
select
a.id
from
weather a
inner join weather b
where
datediff( a.recorddate, b.recorddate )= 1
and a.temperature > b.temperature
datediff(日期1, 日期2): 得到的結果是日期1與日期2相差的天數。
如果日期1比日期2大,結果為正;如果日期1比日期2小,結果為負。
使用交叉查詢,會將兩張表進行笛卡爾積,如 a 表有 1000 條資料,b 表有 2000 條資料,則使用交叉聯接後資料量為:
1000 * 2000 = 20w 條。
上公升的溫度
表 weather column name type idint recorddate date temperature intid 是這個表的主鍵 該錶包含特定日期的溫度資訊 要求 編寫乙個 sql 查詢,來查詢與前一天相比溫度更高的所有日期的 id。result table id 2 4 201...
上公升的溫度 datadiff使用
上公升的溫度 要求 來查詢與之前 昨天的 日期相比溫度更高的所有日期的 id 返回結果不要求順序 題目 表 weather column name type id int recorddate date temperature int id 是這個表的主鍵 該錶包含特定日期的溫度資訊資料如下 wea...
LeeCode197 上公升的溫度
表 weather column name type id int recorddate date temperature int id 是這個表的主鍵 該錶包含特定日期的溫度資訊編寫乙個 sql 查詢,來查詢與之前 昨天的 日期相比溫度更高的所有日期的 id 返回結果不要求順序。查詢結果格式如下例...