В настоящее время я сталкиваюсь с ошибкой, когда я получаю сообщение об ошибке «НЕТ НАЙДЕННЫХ ДАННЫХ», когда я запускаю хранимую процедуру, которая определяет / выбирает переменные, которые я настроил.
Я пробовал два разных метода. Один объединяет столбец и ноль (как показано ниже):
BEGIN
BEGIN
SELECT COALESCE (max_value, 0) AS MAX_VALUE
INTO v_max_v
FROM table1
WHERE car_code = rcar;
--
SELECT COALESCE (min_value, 0) AS MIN_VALUE
INTO v_in_v
FROM table1
WHERE car_code = rcar;
END
END;
Другой метод - обработать исключение, при котором строки для каждой переменной не возвращаются.
BEGIN
BEGIN
SELECT max_value AS MAX_VALUE
INTO v_max_v
FROM table1
WHERE car_code = rcar;
EXCEPTION
WHEN NO_DATA_FOUND
THEN v_max_v := NULL;
END
--
SELECT min_value AS MIN_VALUE
INTO v_min_v
FROM table1
WHERE car_code = rcar;
EXCEPTION
WHEN NO_DATA_FOUND
THEN v_min_v := NULL;
END
END;
Какой метод является более эффективным / менее затратным? Есть ли объективный способ проверить себя? (объясните планы работают только на запросы, я верю)
Заранее спасибо.