× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



OK, I'm confused. 

 

I have the following SQL statement (works with or without a common table
expression).

 

with temp as ( 

select a.jobcode, a.effdate, a.scale,

       b.effdate, b.pos, b.rate

from kronosdta/krjcwsxr a

join lg/krwscale b on (a.scale=b.scale and

     b.effdate = (select max(z.effdate) from lg/krwscale z

     where b.scale=z.scale and z.effdate <= '2004-08-11'))

where a.jobcode=9156

  and a.effdate = (select max(z.effdate) from kronosdta/krjcwsxr z

      where a.jobcode=z.jobcode and z.effdate <= '2004-08-11')

) 

select * from temp

 

gives the expected results:

 

Job code  Effective date  Wage scale  Effective date  Scale position  Hourly
rate

  9,156     2004-07-05        F         2004-07-05           10
13.92 

  9,156     2004-07-05        F         2004-07-05           20
14.05 

  9,156     2004-07-05        F         2004-07-05           30
14.27 

  9,156     2004-07-05        F         2004-07-05           40
14.39 

  9,156     2004-07-05        F         2004-07-05           50
14.58 

  9,156     2004-07-05        F         2004-07-05           60
14.76

 

The goal of the exercise is to get the minimum hourly rate for a job code
with a floor of 14.50. In this scenario, the correct answer is 14.58.

 

When I code

...

Select * from temp

Where rate >= 14.50

 

Job code  Effective date  Wage scale  Effective date  Scale position  Hourly
rate

  9,156     2004-07-05        F         2004-07-05           50
14.58 

  9,156     2004-07-05        F         2004-07-05           60
14.76

 

However, If I code

...

Select min(rate) from temp

 

Or 

...

Select min(rate) from temp

Where rate >= 14.50

 

I get a null value.

 

This is not what I expected.

I coded this as a common table expression to ease testing, but will work as
a normal select statement (with the same results).

 

Do any of you SQL gurus have any advice for me?

 

Thanks,

Loyd

 

 

 

Loyd Goodbar

Senior programmer/analyst

BorgWarner

E/TS Water Valley

662-473-5713

 


As an Amazon Associate we earn from qualifying purchases.

This thread ...


Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].

Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.