J'essaie de comprendre la solution au problème suivant de LEetCode: https://leetcode.com/problems/reing-temperature/
La solution Compte tenu était la suivante: p> Le problème nécessite un calcul du delta entre la température de la ligne de courant et la température précédente. Comment cela est-il réalisé dans la solution ci-dessus? On dirait que la comparaison se fait entre la même rangée de tables gauche et droite. p> p>
3 Réponses :
Étant donné que les données du tableau sont sous la forme d'une valeur par date, la température précédente a une valeur code> enregistrement code> une journée plus tôt, afin de comparer les valeurs que la table est Rejoindre code> Ed à lui-même sur cette condition (c'est-à-dire dataiff (w2.recordate, w1.recorddate) = 1 code>) et la condition selon laquelle la température de la nouvelle ligne est supérieure à la rangée précédente ( W2.Tempperature> W1.Tempperature code>) IE Id
2
4
La condition code> code> connecte les données d'une ligne à la ligne précédente. Je pense que cela serait plus évident en utilisant la date d'arithmétique: Ceci pourrait même pouvoir utiliser un index sur (date) code>. P> < P> Cela dit, la solution la plus évidente est lag () code> - et c'est ce que vous devriez apprendre: p>
Voici la solution de mine: