[SQL ] CTE捞出来的table 能和if一起用吗?

楼主: kisha024 (4545454554)   2014-08-11 09:09:18
数据库名称:MS SQL SERVER
数据库版本:2008
各位好
如下语法 是可以正常执行的
if (select top 1 name from NTable ) ='Alice'
select 'A' 'A'
else select 'B' 'B'
但如果改成下面这样 执行就会有错误
with Newtable as(select * from Ntable)
if (select top 1 name from Newtable ) ='Alice'
select 'A' 'A'
else select 'B' 'B'
想请问 是因为CTE不能和if共用吗? 还是语法上哪里有错误?
谢谢
作者: scpisces (失败的勇气。)   2014-08-11 22:12:00
CTE里只能下select抱歉没看清楚with Newtable(字段名称) as (select * from Ntable)请参考MSDNhttp://ppt.cc/~td3请忽略第三行,应该是说with...(省略) 接着只能下select
楼主: kisha024 (4545454554)   2014-08-12 00:08:00
谢谢 CTE的限制还真多

Links booklink

Contact Us: admin [ a t ] ucptt.com