sql >> Database teknologi >  >> RDS >> Mysql

MySQL Update Column fra anden kolonne i samme tabel

Du kan oprette en selv-join med multiple tabellen UPDATE syntaks:

UPDATE users u
  JOIN users s ON s.SUPERVISOR_USERNAME = u.USERNAME
SET    u.SUPERVISOR_ID = s.ID

Se den på sqlfiddle .

Du bør derefter slippe din SUPERVISOR_NAME kolonne, som overtræder 3NF ; i stedet kan du lave en anden selvtilslutning, når du henter dataene, hvis det ønskes:

SELECT u.ID, u.USERNAME, s.USERNAME AS SUPERVISOR_USERNAME, u.SUPERVISOR_ID
FROM   users u LEFT JOIN users s ON s.ID = u.SUPERVISOR_ID

Se den på sqlfiddle .



  1. MySQL – FOUND_ROWS() Funktion for det samlede antal berørte rækker

  2. Anonymisering af indirekte identifikatorer for at sænke risikoen for gen-ID

  3. JSON_SET() – Indsæt eller opdater værdier i et JSON-dokument i MySQL

  4. Hvordan fjerner jeg emoji-tegn fra en streng?