0

特定の順序でユーザーのリストがあります。たとえば、毎週、キューの順序を1つ上げたいと思います。

Week 1
User | Order
a    | 1
b    | 2
c    | 3

Week 2
User | Order
b    | 1
c    | 2
a    | 3

等々...

PHPとMySQLだけでこれを実現する簡単な方法はありますか?

4

1 に答える 1

1

毎週の cron ジョブを設定します。

  1. まず、すべての行から 1 Order を減算する必要があります。UPDATE TABLE SET Order = Order-1
  2. 次に、「0」値の順序を変更する必要があります。UPDATE TABLE SET Order = MAX(Order)+1 WHERE Order = 0

注文列の値を「0」に制限している場合:

  1. 最初に、「1」の値の順序を変更する必要があります:UPDATE TABLE SET Order = MAX(Order)+1 WHERE Order = 1
  2. 次に、すべての行から 1 Order を減算する必要があります。UPDATE TABLE SET Order = Order-1
于 2012-08-23T09:40:26.020 に答える