0

我有一个按特定顺序排列的用户列表。例如,每周我想将队列的顺序增加一个

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 个订单: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 个订单:UPDATE TABLE SET Order = Order-1
于 2012-08-23T09:40:26.020 回答