2016-03-31 9 views
0

気象ステーションに新しい機能を追加しようとしています。最高気温の日付と雨が最も降った日です。異なる日付を返しているmysqlクエリ

なぜこのコードは結果に異なる日付を付けますか?

最初のクエリをT、R、PまたはHのいずれかに変更した場合は、行の最大値が表示されますが、日付は常に同じです。 私はそれを理解した後、私はコードで他の問題を修正できるかもしれません。 TmaxのDESC BY YEAR(日時)= YEAR(NOW()) ORDER LIMIT

This is the output

$result = mysqli_query($con," 
    SELECT DateTime,max(Tmax) 
    FROM alldata   
    WHERE YEAR(DateTime) = YEAR(NOW())  

    " 
); 
while($row = mysqli_fetch_array($result)){ 
      $maxtempDate1 = $row['DateTime']; 
      $tempMax1 = $row['max(Tmax)']; 
} 

$result = mysqli_query($con," 
    SELECT DateTime,Tmax 
    FROM alldata 
    WHERE Tmax=(select max(Tmax) from alldata) 
    AND YEAR(DateTime) = YEAR(NOW())   
    " 
); 
while($row = mysqli_fetch_array($result)){ 
      $maxtempDate = $row['DateTime']; 
      $tempMax = $row['Tmax']; 

} 
+0

私は思って、YEAR(DateTime)= YEAR(NOW())も今年だけ表示されます。 – Colin

+0

今、何が間違っているのか理解していますか? – Strawberry

+0

いいえ。 2番目のクエリは正しい結果を返します。 – Colin

答えて

0

$結果= ALLDATA
FROM mysqli_query($詐欺、」 SELECT日時、Tmaxの " ); while($ row = mysqli_fetch_array($ result)){ $ maxtempDate = $ row ['DateTime']; $ tempMax = $ row ['Tmax'];

} 
関連する問題