You need to include all columns that are not aggregrative columns in the group 
by.  Even though that is the standard it is a pain to list all columns even if 
you don't need them

Best Regards

Michael Gould

Sent from Samsung mobile

Alexander Reichstadt <l...@mac.com> wrote:

>Hi,
>
>the following statement worked on mysql but gives me an error on postgres:
>
>column "addresses.address1" must appear in the GROUP BY clause or be used in 
>an aggregate function
>
>I guess I am doing something wrong. I read the web answers, but none of them 
>seem to meet my needs:
>
>SELECT 
>companies.id,companies.name,companies.organizationkind,addresses.address1,addresses.address2,addresses.city,addresses.zip
> FROM companies JOIN addresses_reference ON 
>companies.id=addresses_reference.refid_companies LEFT JOIN addresses ON 
>addresses_reference.refid_addresses=addresses.id GROUP BY companies.id;
>
>
>What I did now was create a view based on above statement but without 
>grouping. This returns a list with non-distinct values for all companies that 
>have more than one address, which is correct. But in some cases I only need 
>one address and the problem is that I cannot use distinct.
>
>I wanted to have some way to display a companies list that only gives me the 
>first stored addresses related, and disregard any further addresses.
>
>Is there any way to do this?
>
>Thanks
>Alex

-- 
Sent via pgsql-general mailing list (pgsql-general@postgresql.org)
To make changes to your subscription:
http://www.postgresql.org/mailpref/pgsql-general

Reply via email to