Подскажите пожалуйста, как добавить в запрос sql "если то"
Подскажите пожалуйста, как добавить в запрос sql "если то"
Есть запрос выполняемый из php:
$sql = 'UPDATE `_ba`
SET `w_st`=`w_t`+`w_s`+`w_z`+`w_u`
В той же таблице есть поле w_rb со значениями: R1, R2 и R3
как задать условие:
$sql = 'UPDATE `_ba`
если поле в таблице w_rb равно R1 или R2
то
SET `w_st`=`w_t`+`w_s`
если поле в таблице w_rb равно R3
то
SET `w_st`=`w_t`+`w_s`+`w_z`+`w_u`
Вот так не работает:
$sql = 'UPDATE `_ba`
WHERE `w_rb`= `R3`
SET `w_st`=`w_t`+`w_s`+`w_z`+`w_u`
Ответы (1 шт):
Автор решения: Akina
→ Ссылка
Используйте функцию CASE:
UPDATE `_ba`
SET `w_st` = `w_t` +
`w_s` +
CASE WHEN `w_rb`= 'R3'
THEN `w_z`+`w_u`
ELSE 0
END
Обратите внимание на кавычки - они разные.