我需要根据表中是否存在记录来添加where条件 例如
if record exists in table A then
select * from table B where B='12'
otherwise
select * from table B.
我正在使用上述查询创建一个视图。
请帮忙。
感谢。
答案 0 :(得分:3)
您可以将其写为:
select *
from B
where B = '12' or
exists (<record in A>)
我不确定如何表达存在条件。对于任何记录,它将是:
select *
from B
where B = '12' or
exists (select 1 from A)
答案 1 :(得分:0)
你可以试试这个;
select * from b where (b = 12 and exists (select 1 from a where a = record)) or b = b
它给你;如果在表a中记录得到b = 12的值,则得到没有条件的b值。
答案 2 :(得分:0)
试试这个:
if exists(select * from A)
begin
select * from B where B = '12'
end
else
begin
select * from B
end