The following lines contain the word 'select', 'insert', 'update' or 'delete':
SELECT MAX(date_from) INTO l_last_date
FROM per_addresses_v
WHERE person_id = p_person_id AND
primary_flag = 'Y' AND
date_from <= p_date_from;
SELECT
NVL(add_information18,''),
NVL(add_information19,''),
NVL(add_information17,''),
NVL(add_information20,'')
INTO l_city, l_county, l_state, l_zip
FROM per_addresses_v
WHERE person_id = p_person_id AND
primary_flag = 'Y' AND
date_from = (SELECT max(date_from)
FROM per_addresses_v
WHERE date_from BETWEEN l_date AND p_date_from AND
person_id = p_person_id AND
primary_flag = 'Y');
SELECT
town_or_city,
region_1,
region_2,
postal_code
INTO l_city, l_county, l_state, l_zip
FROM per_addresses_v
WHERE person_id = p_person_id AND
primary_flag = 'Y' AND
l_date BETWEEN date_from AND
NVL(date_to, TO_DATE('31/12/4712', 'DD/MM/YYYY'));
SELECT 'N' FROM per_addresses_v
WHERE person_id = p_person_id AND
date_from IS NOT NULL;
SELECT region_2
FROM per_addresses_v
WHERE person_id = p_person_id
AND primary_flag = 'Y'
AND p_date BETWEEN date_from
AND NVL(date_to, TO_DATE('31/12/4712', 'DD/MM/YYYY'));
SELECT region_2
INTO l_state
FROM per_addresses_v
WHERE person_id = p_person_id AND
primary_flag = 'Y' AND
date_from = (SELECT max(date_from)
FROM per_addresses_v
WHERE date_from >= l_date
AND date_from < p_date_from AND
person_id = p_person_id AND
primary_flag = 'Y');