WITH子句带有一个奇怪的别名

时间:2016-05-25 12:24:03

标签: sql

我熟悉WITH条款的作用,但我发现了这个陈述,我不知道该怎么做:

 WITH
  H AS (SELECT  PS$,HIERY_TYPE,ID$,HIERY_PS$_PARENT,HIERY_TYPE_PARENT,HIERY_ID$_PARENT,LABEL  FROM RSPC_HIERARCHY WHERE PS$='SDH' AND HIERY_TYPE LIKE 'STARS%'),
  H_TREE(XLEVEL, STARS_FAMILY,PS$,HIERY_TYPE,ID$,HIERY_PS$_PARENT,HIERY_TYPE_PARENT,HIERY_ID$_PARENT,LABEL) AS
      (
      SELECT 1 XLEVEL,  ID$ STARS_FAMILY ,  PS$,HIERY_TYPE,ID$,HIERY_PS$_PARENT,HIERY_TYPE_PARENT,HIERY_ID$_PARENT,LABEL  FROM H WHERE  HIERY_TYPE ='STARS_FAMILY'
      UNION ALL
      SELECT  HT.XLEVEL + 1 XLEVEL, HT.STARS_FAMILY,H.PS$,H.HIERY_TYPE,H.ID$,H.HIERY_PS$_PARENT,H.HIERY_TYPE_PARENT,H.HIERY_ID$_PARENT, H.LABEL
      FROM H, H_TREE HT)

特别是,我不理解H_TREE别名。括号中的东西有什么功能?

1 个答案:

答案 0 :(得分:1)

"括号内的东西"只是别名列的名称列表。我认为create view支持相同的构造。

通常,列名直接取自select。但也可以在as之前指定它们。