关于T-SQL公共表达式()的问题

查询了一些相关资料,公共表达式之后直接接SQL语句(insert,update,select等)

那么如果后面要写一些逻辑判断该怎样写呢?

例如:
WITH Emps AS
(
SELECT empid, mgrid, firstname, lastname
FROM HR.Employees
WHERE empid = 5

UNION ALL

SELECT Emp.empid, Emp.mgrid, Emp.firstname, Emp.lastname
FROM Emps AS Mgr
JOIN HR.Employees AS Emp
ON Emp.mgrid = Mgr.empid
)

如果查询出Emps 是空的,错误处理(insert into T1 values('1','2',null,null))
如果Emps不是空的,将Emps结果插入到T1中(insert into T1 select * from emps)

谢谢了~!

https://www.cnblogs.com/kissdodog/archive/2013/06/24/3153012.html

WITH Emps AS
(
SELECT empid, mgrid, firstname, lastname
FROM HR.Employees
WHERE empid = 5

UNION ALL

SELECT Emp.empid, Emp.mgrid, Emp.firstname, Emp.lastname
FROM Emps AS Mgr
JOIN HR.Employees AS Emp
ON Emp.mgrid = Mgr.empid
)
select * into #aa from Emps

if exists (select * from #aa ) insert into T1 select * from #aa
if not exists (select * from #aa ) insert into T1 values('1','2',null,null)