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

MySQL Актуализиране на множество редове в една колона въз основа на стойности от същата колона

Вероятно трябва да актуализирате стойностите въз основа не само на стойността на value но на стойността на key , в противен случай можете да актуализирате 'm' на 'male', когато ключът е 'shirt-size'.

UPDATE `DemoGroup` 
SET `value` = CASE 
    WHEN (`key`, `value`) = ('gender', 'm') THEN 'male'
    WHEN (`key`, `value`) = ('gender', 'f') THEN 'female'
    WHEN (`key`, `value`) = ('age', '10')   THEN '10-19'
    WHEN (`key`, `value`) = ('age', '80')   THEN '80-89'
    ELSE `value` -- no-op for other values
  END 
WHERE `key` IN ('gender','age');


  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 GROUP BY и попълване на празни редове

  2. Свързване с MySQL с помощта на Groovy

  3. Какво е кардиналност в MySQL?

  4. създайте mysql таблица, ако тя не съществува

  5. Най-простият случай на карта един към много в Hibernate не работи в MySQL