financialscheduletype | financialscheduletypevalue | 2 | 05/06/2022 | 2
---|---|
05/04/2022 | |
05/07/2022 | |
05/17/2022 | |
0 | 预计 |
05/13/2022 | |
03/05/2011 |
可以在where
子句中使用case
查询——
select * from finance
where finacialscheduletype =
case when (select count(*) from finance where finacialscheduletype = 2) > 0 then 2 else 0 end;
DB-fiddle这里。
你追求的东西不清楚,你也不解释。你可以这样描述:
select * from finance
where financialscheduletype=2 or financialscheduletype=0;
等于:
select * from finance
where financialscheduletype in (2, 0);
或者你可以这样描述:
select * from finance
where financialscheduletype = case
when exists (
select * from myTable
where financialscheduletype = 2) then 2 else 0 end;