Thanks Kevin. You are absolutely right. I should use parentheses, it is
what i want for the query to do.

It also increasing processing time to 5.444 seconds. Should be okay i think.


On Sun, Dec 1, 2013 at 11:02 PM, Kevin Grittner <kgri...@ymail.com> wrote:

> Hengky Liwandouw <hengkyliwand...@gmail.com> wrote:
>
> > where jualid is not null
> > and extract(year from tanggal)='2013')
>
> > But the problem is : when i change the where clause to :
> >
> > where jualid is not null or returjualid is not null
> > and extract(year from tanggal)='2013')
> >
> > (there is additional or returjualid is not null,) the query needs
> > 56 second to display the result.
>
> Before worrying about the run time, I would worry about whether you
> are getting the results you expect.  That will be interpreted as:
>
> where jualid is not null
>    or (returjualid is not null and extract(year from tanggal) = '2013')
>
> ... not:
>
> where (jualid is not null or returjualid is not null)
>   and extract(year from tanggal) = '2013'
> AND has higher priority than OR; so if you want to limit by year
> from tanggal even when jualid is not null, you must use
> parentheses.
>
> --
> Kevin Grittner
> EDB: http://www.enterprisedb.com
> The Enterprise PostgreSQL Company
>

Reply via email to