Czy można wykonać zapytanie UPDATE w MySQL, które aktualizuje wartość pola tylko wtedy, gdy spełniony jest określony warunek? Coś takiego:MySQL: zaktualizuj pole tylko wtedy, gdy spełniony jest warunek.
UPDATE test
SET
CASE
WHEN true
THEN field = 1
END
WHERE id = 123
Innymi słowy:
UPDATE test
SET
something = 1, /*field that always gets updated*/
CASE
WHEN true
THEN field = 1 /*field that should only get updated when condition is met*/
END
WHERE id = 123
Co to jest właściwy sposób to zrobić?
jedynym powodem przypadek użycia w zapytaniu Update jest jeśli chcesz zaktualizować wiersze w różny sposób w zależności od stan. Jeśli chcesz tylko zaktualizować niektóre wiersze, po prostu dodaj warunki do klauzuli where. – SilverSnake