データベースに 100 を超えたくないフィールドがあります。そうでないことを確認するためにクエリに追加できるものはありますか?
私は通常、これを行うことになります:
UPDATE table SET field = field + $x
UPDATE table SET field = 100 WHERE field > 100
このようなものは存在しますか?
UPDATE table
SET field = CASE WHEN field + $x <= 100
THEN field + $x
ELSE 100
END ;
また:
UPDATE table
SET field = LEAST(field + $x, 100) ;
トリガーはどうですか?何かのようなもの
CREATE TRIGGER tg_limit BEFORE UPDATE ON tbl
FOR EACH ROW
BEGIN
IF NEW.fld > 100 THEN
SET NEW.fld = 100;
END IF;
END