日期:2014-05-18  浏览次数:20432 次

复用子查询的结果
在我的查询中,有多个地方都要用到同样的一个子查询?怎么复用这个自查询?
我是在vc中使用,所以不能用到变量之类的东西
就是一句查询中复用这个子查询

------解决方案--------------------
可以使用CTE,
;with CTE_NAME as
(
select list from table
)
select * from CTE_NAME

CTE使用起来代码客观性强,方便复用,CTE_NAME可以自己定义,括号里的是查询sql,括号后面必须引用该CTE名称。
------解决方案--------------------
或者把cte改为视图,这样应该不会有错
------解决方案--------------------
err~~~
在一个sql会话中的话..用表变量或cte
如果程序中N个模块用到的就用View(视图)吧..
------解决方案--------------------
探讨
是否可以把子查询动态建成视图?

------解决方案--------------------
临时表多好啊