Assuming that your variable number
is an INTEGER.
First I would create a sequence of numbers in a range (the procedure described below was extracted from this solution: get the first N positive integers)
CREATE TABLE list_of_numbers (number INT NOT NULL PRIMARY KEY AUTO_INCREMENT)
CREATE PROCEDURE create_sequence_of_numbers(max_number INT)
BEGIN
DECLARE _min_number INT;
SET _min_number = 1;
WHILE _min_number <= max_number DO
INSERT INTO list_of_numbers SELECT _min_number;
SET _min_number = _min_number + 1;
END WHILE;
END
$$
Armed with this sequence, we can create the following query:
select min(number) from list_of_numbers where number not in (SELECT your_number FROM table1 UNION SELECT your_number FROM table)