Thread: TPCH Benchmark query result invalid

TPCH Benchmark query result invalid

From
Cronje Fourie
Date:
When running the following query against a TPCH db I get 0 results
returned

selecto_orderpriority,count(*) as order_count
fromorders
whereo_orderdate >= date '1993-07-01'and o_orderdate < date '1993-07-01' + interval '3' monthand exists (    select
  *    from        lineitem    where        l_orderkey = o_orderkey        and l_commitdate < l_receiptdate)
 
group byo_orderpriority
order byo_orderpriority;

The same query runs correctly under mysql. Has anyone expierenced this
before?

Cronje


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
MailScanner thanks transtec Computers for their support.



Re: TPCH Benchmark query result invalid

From
Richard Huxton
Date:
Cronje Fourie wrote:
> When running the following query against a TPCH db I get 0 results
> returned

>     and o_orderdate < date '1993-07-01' + interval '3' month

That's the problem line.

richardh=# SELECT  interval '3' month; interval
---------- 00:00:00
(1 row)

It's got a zero-length date-range it's comparing against. If you have 
interval '3 months' that should work, but I'm afraid I haven't got time 
to check against the specs to see what the correct format should be.

--   Richard Huxton  Archonet Ltd


Re: TPCH Benchmark query result invalid

From
Tom Lane
Date:
Richard Huxton <dev@archonet.com> writes:
> richardh=# SELECT  interval '3' month;
>   interval
> ----------
>   00:00:00
> (1 row)

> It's got a zero-length date-range it's comparing against. If you have 
> interval '3 months' that should work, but I'm afraid I haven't got time 
> to check against the specs to see what the correct format should be.

I think this syntax is supposed to work according to the SQL spec.  Tom
Lockhart was fooling around with making that stuff spec-compliant before
he left the project, and no one has bothered to pick it up since :-(.
Perhaps everyone thinks the spec syntax for interval constants is so
bizarre and non-orthogonal it's not worth dealing with ...
        regards, tom lane


Re: TPCH Benchmark query result invalid

From
Michael Glaesemann
Date:
On Dec 13, 2006, at 1:23 , Tom Lane wrote:

> Richard Huxton <dev@archonet.com> writes:
>> richardh=# SELECT  interval '3' month;
>>   interval
>> ----------
>>   00:00:00
>> (1 row)
>
>> It's got a zero-length date-range it's comparing against. If you have
>> interval '3 months' that should work, but I'm afraid I haven't got  
>> time
>> to check against the specs to see what the correct format should be.
>
> I think this syntax is supposed to work according to the SQL spec.   
> Tom
> Lockhart was fooling around with making that stuff spec-compliant  
> before
> he left the project, and no one has bothered to pick it up since :-(.
> Perhaps everyone thinks the spec syntax for interval constants is so
> bizarre and non-orthogonal it's not worth dealing with ...

Well, for what it's worth, I'm interested. I wasn't aware of this  
particular problem, and I can't say when I'll get around to doing  
something about it, but now I've at least written it down on my  
personal todo.

Michael Glaesemann
grzm seespotcode net




Re: TPCH Benchmark query result invalid

From
Cronje Fourie
Date:
Thanks guys.  Richard your fix didn't seem to work.  But it's got me in
the right direction :)  Time to RTFM ;)

Cronje

On Tue, 2006-12-12 at 15:05 +0000, Richard Huxton wrote:
> Cronje Fourie wrote:
> > When running the following query against a TPCH db I get 0 results
> > returned
> 
> >     and o_orderdate < date '1993-07-01' + interval '3' month
> 
> That's the problem line.
> 
> richardh=# SELECT  interval '3' month;
>   interval
> ----------
>   00:00:00
> (1 row)
> 
> It's got a zero-length date-range it's comparing against. If you have 
> interval '3 months' that should work, but I'm afraid I haven't got time 
> to check against the specs to see what the correct format should be.
> 
> -- 
>    Richard Huxton
>    Archonet Ltd
> 
> ---------------------------(end of broadcast)---------------------------
> TIP 3: Have you checked our extensive FAQ?
> 
>                http://www.postgresql.org/docs/faq
> 


-- 
This message has been scanned for viruses and
dangerous content by MailScanner, and is
believed to be clean.
MailScanner thanks transtec Computers for their support.