Нахождение длины массива в postgres
-
24-12-2019 - |
Вопрос
Я попробовал 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)
.
Мне нужно использовать столбец Value и узнать длину этого массива значений
postgres версия: 8.2
Решение
Это должно работать:
select array_upper ( value, 1 ) from table_name_here;
.
Примечание. «Значение» является зарезервированным ключевым словом в SQL, поэтому не рекомендуется использовать его в качестве имени столбца.См.: http://www.postgresql.org/docs/current/static/sql-keywords-appendix.html
Не связан с StackOverflow