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

mysql jaka jest właściwa składnia tego warunkowego wyrażenia aktualizacji

Powinien być napisany w ten sposób:

UPDATE tablename
SET fieldX = CASE WHEN fieldA = 'value1' THEN 'xxx' ELSE fieldX END,
    fieldY = CASE WHEN fieldA = 'value2' THEN 'yyy' ELSE fieldY END
WHERE fieldA IN ('value1', 'value2'); 

Pamiętaj, że: Napisałem ELSE część w ten sposób, ponieważ wartość domyślna dla ELSE jest NULL jeśli warunek CASE wyrażenie nie jest poprawne, więc ustawi je na oryginalną wartość, a nie na NULL wartość.




  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Czy istnieje odpowiednik PHP `date_default_timezone_set()`, który działa w MySQL?

  2. Musisz znać klasę tablicy bajtów zapisanej w bazie danych MySQL

  3. Jak ustrukturyzować zapytanie SQL, aby znaleźć obiekt, który jest obiektem nadrzędnym dwóch określonych innych obiektów?

  4. Czy możesz użyć automatycznego przyrostu w MySql, jeśli nie jest to klucz podstawowy?

  5. przesyłanie pliku pdf za pomocą salwy, ale dostaje pusty plik w folderze na serwerze