Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- create table staffs(
- staff_id int generated by default as identity primary key,
- first_name varchar(50) not null,
- last_name varchar(50) not null,
- email varchar(255) not null unique,
- phone varchar(25) not null,
- salary int not null
- );
- insert into staffs(first_name, last_name, email, phone, salary)
- INSERT into staffs(first_name, last_name, email, phone,salary)
- INSERT INTO staffs(first_name, last_name, email, phone, salary)
- INSERT INTO staffs(first_name, last_name, email, phone, salary)
- INSERT INTO staffs(first_name, last_name, email, phone, salary)
- INSERT INTO staffs(first_name, last_name, email, phone, salary)
- INSERT INTO staffs(first_name, last_name, email, phone, salary)
- INSERT INTO staffs(first_name, last_name, email, phone, salary)
- INSERT INTO staffs(first_name, last_name, email, phone, salary)
- INSERT INTO staffs(first_name, last_name, email, phone, salary)
- INSERT INTO staffs(first_name, last_name, email, phone, salary)
- create or replace function get_staffs(pattern varchar)
- returns table(staffs_email varchar,
- staffs_salary int
- )
- as $$
- begin
- return query select email, cast (salary as int)
- from staffs
- where email ilike pattern;
- end; $$
- language 'plpgsql';
- select * from get_staffs('be%');
- create or replace function staff(p_pattern varchar, p_salary int)
- returns table (staffs_first_name varchar,
- staffs_salary int
- ) as $$
- declare
- var_r record;
- begin
- for var_r in(select first_name, salary
- from staffs
- where first_name ilike p_pattern and salary = p_salary)
- loop
- staffs_first_name := upper (var_r.first_name);
- staffs_salary := var_r.salary;
- return next;
- end loop;
- end; $$
- language 'plpgsql';
- select * from staff('ra%', 12000000);
- select * from staffs;
- drop function staff
Advertisement
Add Comment
Please, Sign In to add comment