2010-12-08 24 views
1

J'utilise postgres et certains champs de ma table sont des tableaux. Je cherche le plus grand tableau est-il un moyen de trouver cette information avec une déclaration SQL?Comment obtenir une taille de tableau (et la plus grande) avec une instruction SQL?

CREATE TABLE chapter 
(.... 
chapter_path integer[], 
.....) 

Mon chemin de chapitre sont comme ça {x,y,z} {x,y} {x}

Comment une instruction SQL puis-je obtenir correspondant à {x,y,z} taille du tableau entier?

Répondre

4

Utilisez array_upper().

+0

Malheureusement, mes tableaux sont des tableaux d'uuid et non un nombre entier simple que j'ai mis en place pour la démo. Merci quand même pour la réponse. – Spredzy

+0

La fonction array_lenght de la page que vous m'avez donnée a fait l'affaire. Je vous remercie ! – Spredzy

+0

@Frank, y a-t-il une différence entre array_upper() et array_length() ?? Y a-t-il un avantage à utiliser l'un plutôt que l'autre? ou existe-t-il des situations où vous devez utiliser l'un et pas l'autre? – indago