簡體   English   中英

PHP / MySQL更新查詢每2列更新房間自動更改

[英]PHP/MySQL Update query every 2 column update room change automated

我想創建自動房間划分。

假設:

  • 我有4個數據。
  • 每個房間最多2人。

如果房間已滿/達到最大“ 2”,第3個人會自動插入下一個房間。

這是我的代碼。 假設4個數據。

$kuota=2; //Max 2 data in 1 room

while ($row = mysqli_fetch_array($query)) {
$id = $row["id"];
$x=1;
while($x<=$kuota) {
    $sql2 = "UPDATE cds SET room=$y WHERE id='$id'";
    $query2 = mysqli_query($con, $sql2) or die (mysqli_error($con));
    $x++;
}
$y++

}

但這不起作用。

我的代碼太丑了:(

我想得到這樣的結果

name     ||  Room
Michael  ||   1
Muller   ||   1
...
Cyntia   ||   2
Gina     ||   2
while ($row = mysqli_fetch_assoc($query)) {
    $id = $row['id'];
    $sql2 = "UPDATE cds AS c1
             CROSS JOIN (SELECT room
                         FROM cds
                         GROUP BY room
                         HAVING COUNT(*) < $kuota
                         ORDER BY room
                         LIMIT 1) AS c2
             SET c1.room = c2.room
             WHERE id = $id";
    mysqli_query($con, $sql2) or die (mysqli_error($con));
}

c2子查詢返回分配了少於$kuota個人的第一個房間。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM