有人能帮我做下面的sql查询吗?
当你想按第一阶段过滤时,它应该返回第一阶段或第一阶段/第二阶段的结果,而不是第二阶段或第三阶段。
同样,对于第二阶段,它应返回第一/二阶段、第二阶段或第二/三阶段的成果。
select Phase from Phases where Phase in (case
when @phase='Phase I' then '''Phase I'',''Phase I/II'''
when @phase='Phase II' then '''Phase I/II'',''Phase II'',''Phase II/III'''
end)我不想用动态查询来解决这个问题。
发布于 2013-10-16 13:17:39
布尔逻辑可以解决这个问题:
select Phase
from Phases
where (@phase = 'Phase I' and Phase in ('Phase I', 'Phase I/II'))
or (@phase = 'Phase II' and Phase in ('Phase I/II', 'Phase II', 'Phase II/III'))https://stackoverflow.com/questions/19404333
复制相似问题