LeetCode力バックルブラシタイトルデータベース(197):温度上昇

タイトル

天気テーブル与えられ、温度同上すべての日付に比べ日(昨日)の前に高い検索するには、SQLクエリを記述します。
ここに画像を挿入説明
例えば、天気特定のテーブルによれば、次のIDを返します。

ここに画像を挿入説明

解決

方法:JOINとDATEDIFF()句の
アルゴリズム

MySQLはDATEDIFFを使用して日付の2種類の値を比較します。

したがって、我々は、DATEDIFF()関数を使用して、それ自体で天候に組み合わせることができます。

MySQLの

SELECT
    weather.id AS 'Id'
FROM
    weather
        JOIN
    weather w ON DATEDIFF(weather.date, w.date) = 1
        AND weather.Temperature > w.Temperature
;

ここに画像を挿入説明
ここに画像を挿入説明
ここに画像を挿入説明

答え

SELECT
    weather.id AS 'Id'
FROM
    weather
        JOIN
    weather w ON DATEDIFF(weather.recorddate, w.recorddate) = 1
        AND weather.Temperature > w.Temperature
;

公開された698元の記事 ウォンの賞賛929 ビュー120 000 +

おすすめ

転載: blog.csdn.net/qq_35456045/article/details/104804648