我尝试了生成的array_upper(array(Value))array_upper((Value):array[]),但正在得到语法错误。

值:数据类型是int []; 我期待结果如下表:

 Pname  week_date      Value    array_length
    5773    6/8/2013    {29}            1
    5773    3/30/2013   {27}            1
    5773    3/16/2013   {138,3,4}       3
    5773    3/9/2013    {37,8}          2
    5773    1/19/2013   {66}            1
    5773    1/5/2013    {49,50,50,56}   4
.

但是这个工作正常

select array_upper(array[1,2,3,6], 1)
.

我需要使用值列并找出该值阵列的长度

p> postgres版本:8.2

有帮助吗?

解决方案

应该有效:

select array_upper ( value, 1 ) from table_name_here;
.

注意:“值”在SQL中保留关键字,因此建议不要将其用作列名称。请参阅: http://www.postgresql.org/docs/current/static/sql-keywords-appendix.html

许可以下: CC-BY-SA归因
不隶属于 StackOverflow
scroll top