Re: [GENERAL] integer[] Update Questions

From: Ryan Mahoney <ryan(at)paymentalliance(dot)net>
To: Oleg Bartunov <oleg(at)sai(dot)msu(dot)su>
Cc: pgsql-hackers(at)postgresql(dot)org
Subject: Re: [GENERAL] integer[] Update Questions
Date: 2002-08-23 17:41:49
Message-ID: 1030124509.22016.135.camel@dhcp-224-12
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
Lists: pgsql-general pgsql-hackers

Wow Oleg, that's great to hear! I am compiling 7.3 from CVS right now.
If you do have a patch for 7.2 could you send that - I would like to use
these functions on some production machines running 7.2.1 currently.

Thanks for the prompt response and keep up the great work!

Ryan Mahoney

On Fri, 2002-08-23 at 12:40, Oleg Bartunov wrote:
> Well, CVS version (7.3) of contrib/intarray has:
> FUNCTIONS:
>
> int icount(int[]) - the number of elements in intarray
> int[] sort(int[], 'asc' | 'desc') - sort intarray
> int[] sort(int[]) - sort in ascending order
> int[] sort_asc(int[]),sort_desc(int[]) - shortcuts for sort
> int[] uniq(int[]) - returns unique elements
> int idx(int[], int item) - returns index of first intarray matching element to item, or
> '0' if matching failed.
> int[] subarray(int[],int START [, int LEN]) - returns part of intarray starting from
> element number START (from 1) and length LEN.
>
> OPERATIONS:
>
>
> int[] && int[] - overlap - returns TRUE if arrays has at least one common elements.
> int[] @ int[] - contains - returns TRUE if left array contains right array
> int[] ~ int[] - contained - returns TRUE if left array is contained in right array
> # int[] - return the number of elements in array
> int[] + int - push element to array ( add to end of array)
> int[] + int[] - merge of arrays (right array added to the end of left one)
> int[] - int - remove entries matched by right argument from array
> int[] - int[] - remove left array from right
> int[] | int - returns intarray - union of arguments
> int[] | int[] - returns intarray as a union of two arrays
> int[] & int[] - returns intersection of arrays
>
>
> I don't remember if I have a patch for 7.2
>
> Oleg
> On 23 Aug 2002, Ryan Mahoney wrote:
>
> > Greeting Hackers! Had some questions about integer array type...
> >
> > If I have a integer[] field in a table, which already has the values
> > {1,2,3,6,17} and I additionally want to add the value '45' to this
> > array, is there any easier way than SELECTing the current values and
> > then updating the entire record?
> >
> > I see that I could do:
> > UPDATE table SET array_field[6] = 45 WHERE ...
> >
> > But how do I know that 6 is the correct index without first SELECTing
> > all the data?
> >
> > Is there an array push/pop function? Is there a method of counting the
> > number of integers in an array?
> >
> > Thanks for any help you can provide - indexable integer arrays are an
> > incredible feature, thanks for the hard work!
> >
> > Ryan Mahoney
> >
> > ---------------------------(end of broadcast)---------------------------
> > TIP 4: Don't 'kill -9' the postmaster
> >
>
> Regards,
> Oleg
> _____________________________________________________________
> Oleg Bartunov, sci.researcher, hostmaster of AstroNet,
> Sternberg Astronomical Institute, Moscow University (Russia)
> Internet: oleg(at)sai(dot)msu(dot)su, http://www.sai.msu.su/~megera/
> phone: +007(095)939-16-83, +007(095)939-23-83
>
>
> ---------------------------(end of broadcast)---------------------------
> TIP 1: subscribe and unsubscribe commands go to majordomo(at)postgresql(dot)org
>

In response to

Responses

Browse pgsql-general by date

  From Date Subject
Next Message Bruce Momjian 2002-08-23 17:46:03 Re: [GENERAL] integer[] Update Questions
Previous Message Dmitry Tkach 2002-08-23 17:40:40 Re: alter table ad primary key

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 2002-08-23 17:46:03 Re: [GENERAL] integer[] Update Questions
Previous Message Marc G. Fournier 2002-08-23 17:22:06 v7.2.2 Released ... but not announced ...