Я ищу правильный синтаксис (если это возможно в хранимых процедурах MySQL) для использования логических операторов в, ЕСЛИ оператор THEN. Вот что-то вроде того, что я хотел бы сделать, но я не уверен, должен ли я ввести "ИЛИ" или "||" в ЕСЛИ... ЗАТЕМ Пункт:
DELIMITER $$
CREATE PROCEDURE `MyStoredProc` (_id INT)
BEGIN
DECLARE testVal1 INT DEFAULT 0;
DECLARE testVal2 INT DEFAULT 0;
SELECT value1, value2 INTO testVal1, testVal2
FROM ValueTable
WHERE id = _id;
IF testVal1 > 0 OR testVal2 > 0 THEN
UPDATE ValueTable
SET value1 = (value1+1)
WHERE id=_id;
END IF;
END$$
Я не пробовал это с хранимыми процедурами, но «или» работает для триггеров. Вот рабочий фрагмент текущего производственного кода:
CREATE TRIGGER `update_inventory` AFTER INSERT ON `order_updates` FOR EACH ROW
begin
if new.type = 'received' or new.type = 'used' or new.type = 'returned' then
...