我需要檢查哪些工廠是在線的,所以我想比較最后的日期時間更新和當前的時間,如果差異小于15分鐘,工廠是在線的,否則是離線的
我在php中寫了這個查詢,但所有的行都變成了在線或離線,我做錯了什么?
我已經在php中寫了一個查詢,但所有的行都變成了在線或離線,我做錯了什么?
似乎更新是在資料庫的所有行上進行的,而不僅僅是在第一個查詢所選擇的行上
$sql = "select * from PlantData where lastUpdate > DATE_SUB(NOW(), INTERVAL 15 MINUTE)" /span>;
$resultt = mysqli_query($connection, $sql)。
//echo($resultt);
while ($roww = $resultt-> fetch_array()) {
$rowws[] = $roww;
}
foreach($rowws as & $roww) {
$sqlupdate = "update PlantData set statusConnection = 'online'"/span>。
mysqli_query($connection, $sqlupdate) 。
}
$sql2 = "select * from PlantData where lastUpdate < DATE_SUB(NOW(), INTERVAL 15 MINUTE)" ;
$resultt2 = mysqli_query($connection, $sql2)。
//echo($resultt);
while ($roww2 = $resultt2-> fetch_array()) {
$rowws2[] = $roww2;
}
foreach($rowws2 as & $roww2) {
$sqlupdate2 = "update PlantData set statusConnection = 'offline'"/span>。
mysqli_query($connection, $sqlupdate2) 。
}
感謝您的支持
uj5u.com熱心網友回復:
只運行一次查詢
UPDATE PlantData
SET
statusConnection = Case
WHEN lastUpdate > = NOW() - INTERVAL 15 MINUTE THEN 'online'
WHEN lastUpdate < NOW() - INTERVAL 15 MINUTE THEN 'offline'
END。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/312012.html
標籤:
