堆栈表值函数发生器

适用于:检查标记是的砖的SQL检查标记是的砖运行时

分离expr1、…exprNnumRows行。

语法

堆栈(numRows,expr1(,])

参数

  • numRows:一个整数文字大于0指定的行数。

  • exprN:任何类型的表达式。任何的类型exprN必须匹配的类型expr (N + numRows)

返回

一组numRows行,包括max (1,(N / numRows))列由这个函数。一个不完整的行填充年代。

默认情况下,生成的列命名col0,坳(n - 1)

堆栈等于“值”的条款

  • 适用于:检查标记是的砖12.1和更早的运行时:

    堆栈只能放在选择列表作为根一个表达式或后侧面图。当把函数选择必须没有其他生成器函数的列表是一样的选择列表或UNSUPPORTED_GENERATOR.MULTI_GENERATOR是提高。

  • 适用于:检查标记是的砖的SQL检查标记是的砖运行时12.2及以后:

    调用的侧面图条款或者是选择列表是弃用。相反,调用堆栈作为一个table_reference

例子

适用于:检查标记是的砖12.1和更早的运行时:

>选择“你好”,堆栈(2,1,2,3)作为(第一个,第二个),“世界”;你好12世界你好3世界>选择“你好”,堆栈(2,1,2,3)作为(第一个,第二个),堆栈(2,“一个”,“b”)作为(第三)“世界”;错误:UNSUPPORTED_GENERATORMULTI_GENERATOR——相当于使用值>选择“你好”,s1*,s2*,“世界”(1,2),(3,)作为s1(第一个,第二个),(“一个”),(“b”)作为s2(第三);你好12一个世界你好3一个世界你好12b世界你好3b世界

适用于:检查标记是的砖的SQL检查标记是的砖运行时12.2及以后:

>选择“你好”,年代*,“世界”堆栈(2,1,2,3)作为年代(第一个,第二个);你好12世界你好3世界>选择“你好”,s1*,s2*,“世界”堆栈(2,1,2,3)作为s1(第一个,第二个),堆栈(2,“一个”,“b”)作为s2(第三);你好12一个世界你好3一个世界你好12b世界你好3b世界