Postgresql 函数根据特定条件选择表行
如何实现基于条件1选择行的函数,但如果这些行不存在,则基于条件2选择。如果下面的条件可以满足,则返回一个空表。如果存在,您可以告诉我们测试第一个条件。然后根据结果使用返回查询进行适当的选择Postgresql 函数根据特定条件选择表行,postgresql,Postgresql,如何实现基于条件1选择行的函数,但如果这些行不存在,则基于条件2选择。如果下面的条件可以满足,则返回一个空表。如果存在,您可以告诉我们测试第一个条件。然后根据结果使用返回查询进行适当的选择 create table my_table(x int, y int); create function get_rows() returns table (lie my_table) as $$ begin -- 1 First try --select * from my_ta
create table my_table(x int, y int);
create function get_rows()
returns table (lie my_table) as $$
begin
-- 1 First try
--select * from my_table where x < 0;
-- 2 If empty then try
--select * from my_table where y < 0;
end; $$
language plpgsql;
create or replace function get_rows()
returns table (lie my_table)
language plpgsql
as $$
begin
-- 1 First try
if exists (select null from my_table where x < 0)
then
return query
select * from my_table
where x < 0;
-- 2 If empty then try
else
return query
select * from my_table
where y < 0;
end if;
end; $$;