with as性能调优

源码货栈 论文问答 1

用with as查询出一个表。想要引用这个查询结果,比如对这个查询出来的表进行聚合,该怎么用呀。直接select 语句from( with as 已经查好的表),会报错,求大佬解答

回复

共2条回复 我来回复
  • 毕设工坊
    这个人很懒,什么都没有留下~
    评论

    直接select 语句from( with as 已经查好的表),会报错,那个是with-as自身的性质决定的,with-as定义的是一张临时虚拟表,它的意义是需要定义后立即被使用,而你这种结果,with as 之后已经没有引用到这个临时表的了,可以看一下官网对with-as的介绍,就明白了

    0条评论
  • 源码客栈
    这个人很懒,什么都没有留下~
    评论
    WITH HH
    AS
    (SELECT ID FROM DEPT WHERE NAME LIKE '苏州%'
    )
    SELECT SUM(求和列) FROM
    (
    select * from proj where dept in (select dept from HH)
    )
    
    0条评论

发表回复

登录后才能评论