我有这样的场景,我需要在条件中添加我的加入
例如当值为 1 时,则内部连接到表 a,如果值为 2,则内部连接到表
下面是我的示例查询,我收到错误Incorrect syntax near the keyword 'inner'
DECLARE @i INT=1
select name from emp
if(@i=1)
begin
inner join a on a.ID=emp.ID
end
else if(@i=1)
begin
inner join b on b.ID=emp.ID
end
where emp.ID=2
谢谢
最佳答案
这行得通吗?在两个条件下外部连接两个表,并将条件放在您的选择子句中,如下所示:
select name, case when @i=1 then a.column else b.column end from emp
left outer join a on a.ID=emp.ID
left outer join b on b.ID=emp.ID
where emp.ID=2
关于sql - 在 SQL 查询中加入条件语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1529829/