2012-09-13 18 views
6

Podczas korzystania z array_agg lub array_string, tablica zwraca pusty powyżej pewnego rozmiaru.ograniczenie array_agg w Postgresql 9.1

SELECT array_agg(x.id) FROM (SELECT id FROM table LIMIT 500) x - działa i zwraca tablicę.

ale to zapytanie: SELECT array_agg(x.id) FROM (SELECT id FROM table LIMIT 667) x Nie działa. zwraca pustą tablicę.

Jestem prawie pewien, że to nie osiąga ograniczenia rozmiaru tablicy. Jakieś pomysły, dlaczego tak się dzieje?

+1

Czy "id" może mieć wartość null? –

+1

@a_horse_with_no_name nie. spróbuj 'SELECT array_agg (x.id) FROM (SELECT * FROM cast (generate_series (1,1158) as int) jako id) x' – Ereli

+3

Dowiedziałem się o co chodzi. ograniczenie występuje w środowisku wyświetlania. 'pgAdmin III' nie wyświetla danych w interfejsie, ale istnieje. – Ereli

Odpowiedz

6

problemem nie był Postgresql, ale raczej klient, którego używałem. pgAdmin III nie wyświetla zawartości tablicy powyżej określonego rozmiaru. około 4,5k. podczas korzystania z psql nie występuje ten sam problem.

z interfejsem użytkownika pgAdmin istnieje opcja ustawienia "Max characters per column" i została ona ustawiona na 256 w moim przypadku, co nie ma większego sensu. ale możesz skopiować & wkleić tablicę, która wygląda pusty w notatniku, znajdziesz wszystkie dane tam.

+0

ładne obersvation – vol7ron

Powiązane problemy