我想比较表中的两个值:
这是我的桌子:
ID;VALUE
1;700
2;600
3;800
4;900
这是我的查询:
$stmt = $db->query("SELECT ID, VALUE FROM TABLE);
现在我喜欢将当前行的结果与下一行的结果进行比较。在 mysql 中这很容易,因为我必须设置行号。我没有找到 PDO 的任何解决方案。
这是我的代码:
while($row = $stmt->fetch(PDO::FETCH_ASSOC)) {
$id = $row["ID"];
$val_current = $row["VALUE"];
$row_next = $stmt->fetch(PDO::FETCH_ASSOC);
$val_next = $row["VALUE"];
if ($val_current > $val_next){
echo "$id is greate!";
}else{
echo "$id is less!";
}
}
结果是:
1 is greater
3 is less
他错过了检查 ID 2 和 ID 3 因为我在 while 循环中获取下一个元素。所以我获取它以获取下一个值,然后在循环中再次获取。我可以在循环末尾重新定位光标吗?
慕勒3428872
杨__羊羊