196.删除重复的电子邮箱
方法一:
delete p1
from Person p1,Person p2
where p1.Email = p2.Email and p1.Id <p2.Id
197.上升的温度
给定一个 Weather 表,编写一个 SQL 查询,来查找与之前(昨天的)日期相比温度更高的所有日期的 Id。
方法一:
select w1.Id
from Weather w1, Weather w2
where w1. Temperature>w2. Temperature and subdata(w1.RecordDate,1)=w2.RecordDate
分析:该方法使用MySQL的SUBDATE函数,实现日期减一。
方法二:
select w1.Id
from Weather w1, Weather w2
where w1. Temperature>w2. Temperature and datediff(w1.RecordDate,w2.RecordDate)=1
分析:该方法使用MySQL的DataDiff函数计算两个日期的差值。
方法三:
select w1.Id
from Weather w1, Weather w2
where w1. Temperature>w2. Temperature and to_days(w1.RecordDate) - to_days(w2.RecordDate) = 1
分析:该方法使用MySQL的TO_DAYS函数,用来将日期换算成天数,再进行减法比较。