Mysql
 sql >> база данни >  >> RDS >> Mysql

MySql Определяне на отместване на ред от резултат от заявка

Така че с вашия пример за таблица:

username    ticket_number   queue_time
Doc             0               0                  The 1st 3 not in sorted result
Grumpy          0               0
Happy           0               0
Sleepy          1               111                The following are in sorted result
Bashful         2               222
Sneezy          0               333
SnowWhite       ???             444               This is the current user (assign ???=4)
Dopey           0               555
EvilQueen       0               666

как да присвоите стойност 4 на колоната ticket_number на потребителското име SnowWhite, като 4 е рангът на реда в сортирана селекция от началните редове:

първо вземете сортирания резултат:

$result = mysql_query("SELECT * FROM table WHERE [here the condition for your sorted array]"); 
// don't forget to remove the []. they don't go there.
while ($row = mysql_fetch_assoc($result))
 {$array[] = $row;}

това трябва да ви даде нещо като:

[0]   [username]        [Sleepy]
      [ticket_number]   [1]
      [queue_time]      [111]
[1]   [username]        [Bashful]
      [ticket_number]   [2]
      [queue_time]      [222]
[2]   [username]        [Sneezy]
      [ticket_number]   [0]
      [queue_time]      [333]
[3]   [username]        [SnowWhite]
      [ticket_number]   [NULL]
      [queue_time]      [444]

след това foreach през вашия масив

    foreach ($array as $number => $row)
     {if ($row[username] == $userinfo)
       {$result = mysql_query('UPDATE table SET ticket_numer=' . ($number+1) . ' WHERE username=' . $userinfo);}}

редът, съответстващ на потребителското име SnowWhite ще получи ($номер + 1) (3 + 1) като билет_номер




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. персонализиран php форум - показва нови/непрочетени публикации

  2. Филтрирайте редове в колона въз основа на зададени правила в SQL

  3. Достъпът до MYSQL е отказан за потребител 'root'@'localhost'

  4. MySQL топ 2 записа на група

  5. Как да публикувам параметри на заявка с Axios?