Mysql
 sql >> Baza danych >  >> RDS >> Mysql

#1221 — Nieprawidłowe użycie UPDATE i ORDER BY

Nie możesz użyć kolejności i limitu w instrukcji aktualizacji w przypadku wielu tabel.

Cytując z dokumentacji MySQL:

UPDATE user u 
INNER JOIN 
(
    SELECT 
    *,
    (@i := (@i + 1)) AS row_number
    FROM user u 
    CROSS JOIN (SELECT @i := 0) r
    WHERE user_active=1
    ORDER BY user_planets DESC
)AS t
ON u.Primary_key = t.primary_key
SET u.user_rank_planets = t.row_number.

Uwaga: Zastąp u.Primary_key i t.primary_key za pomocą klucza podstawowego user tabela.

Przeczytaj kilka pierwszych akapitów http://dev.mysql.com/doc /refman/5.7/en/update.html



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. MySQL Workbench Error 1175 Nawet z instrukcją Where

  2. MySQL:Błąd usuwania bazy danych (errno 13; errno 17; errno 39)

  3. wywołaj zewnętrzny skrypt z wyzwalaczem mySQL WHITOUT sys_exec na ubuntu ARMHF

  4. Java, jak zmienić aktualną bazę danych na inną?

  5. Ile pamięci zajmie wartość null w DB?