Php 从MySQL表中选择-将单列的每行下移1行

Php 从MySQL表中选择-将单列的每行下移1行,php,mysql,mysqli,Php,Mysql,Mysqli,我有一张桌子。我使用它在我的网站上显示数据: $daily = "SELECT id, weight, sys FROM scale ORDER BY id DESC LIMIT 24"; $result_daily = $conn->query($daily); <table> while($row = $result_daily->fetch_assoc()) { echo "<tr><<td>"

我有一张桌子。我使用它在我的网站上显示数据:

$daily = "SELECT id, weight, sys FROM scale ORDER BY id DESC LIMIT 24";
$result_daily = $conn->query($daily);

<table>
while($row = $result_daily->fetch_assoc()) {
 echo "<tr><<td>". $row["id"]. "</td><td>" . $row["weight"] . "</td><td>". $row["sys"]. "</td></tr>";
}echo "</table>";}?>
我想将sys列的每一行下移1行。像这样:

  id. weight  sys
| 5. | 32.5 |    |
| 4. | 31.5 | 15 |
| 3. | 34.5 | 14 |
| 2. | 31.5 | 17 |
| 1. | 30.0 | 15 |
$daily=“按id DESC LIMIT 24从磅秤订单中选择id、重量、系统”;
$result\u daily=$conn->query($daily);
$s=“”;
而($row=$result\u daily->fetch\u assoc()){

echo“您可以在循环时将先前的
sys
值保留在局部变量中:

$prev_sys='';
而($row=$result\u daily->fetch\u assoc()){

echo“我建议将所有数据提取到一个数组中,然后使用数字键访问前一行。如果没有前一行,则提供空字符串作为默认值

$daily = "SELECT id, weight, sys FROM scale ORDER BY id DESC LIMIT 24";
$result_daily = $conn->query($daily)->fetch_all(MYSQLI_ASSOC);

echo "<table>";
foreach ($result_daily as $key => $row) {
    echo "<tr>";
    echo "<td>". $row["id"]. "</td><td>" . $row["weight"] . "</td><td>". ($result_daily[$key++]["sys"] ?? ''). "</td>";
    echo "</tr>";
}
echo "</table>";
$daily=“按id DESC LIMIT 24从磅秤订单中选择id、重量、系统”;
$result\u daily=$conn->query($daily)->fetch\u all(MYSQLI\u ASSOC);
回声“;
foreach($result\u每日作为$key=>$row){
回声“;
回显“$row[“id”]。$row[“weight”]。”($result_daily[$key++][“sys”]?”);
回声“;
}
回声“;

为什么这些数据实际上是从一个完全不同的行中提取出来的?Sys是系统运行时间,它是从唤醒到睡眠的测量值。因此,这些数据只会在下一次唤醒时上载到sServer,但通过将最后一个元素显示为与其他元素的偏移量,在应用层上更容易容纳,例如,
$rows[$i-1][2]
$daily = "SELECT id, weight, sys FROM scale ORDER BY id DESC LIMIT 24";
$result_daily = $conn->query($daily);
$s="";

<table>
while($row = $result_daily->fetch_assoc()) {
 echo "<tr><<td>". $row["id"]. "</td><td>" . $row["weight"] . "</td><td>". $s. "</td></tr>";
 $s = $row["sys"];
}echo "</table>";}?>
$daily = "SELECT id, weight, sys FROM scale ORDER BY id DESC LIMIT 24";
$result_daily = $conn->query($daily)->fetch_all(MYSQLI_ASSOC);

echo "<table>";
foreach ($result_daily as $key => $row) {
    echo "<tr>";
    echo "<td>". $row["id"]. "</td><td>" . $row["weight"] . "</td><td>". ($result_daily[$key++]["sys"] ?? ''). "</td>";
    echo "</tr>";
}
echo "</table>";