with TempTable as
(select
a,b,c,d,e
from ..
where..
group by ...)
Select * FROM TempTable where a=1 --查询1
Select a,b,c FROM TempTabel where a=2 --查询2
Select a,b,c,d FROM TempTabel where a=3 --查询3
如何让查询代码生效,使用 union all 的话查询2、查询3就会显示不必要的列。
查询出来以后再select下需要的列。
有人建议使用if语句,但会报错
if(a=1)
{Select * FROM TempTable where a=1}
else
if (a=2)
{Select a,b,c FROM TempTable where a=2}
else
{Select a,b,c,d FROM TempTable where a=3}