Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.misc -> Re: Oracle Newbie - SQL question

Re: Oracle Newbie - SQL question

From: Daniel Morgan <dmorgan_at_exesolutions.com>
Date: Wed, 17 Jul 2002 17:07:13 GMT
Message-ID: <3D35A407.6B60BFCF@exesolutions.com>


Jack Straw wrote:

> Hey everyone,
>
> Just getting my feet wet with Oracle and I have run into a question I was
> hoping to get some help with.
>
> I am currently studying for the Oracle SQL cert and came accross this
> question:
>
> "Display the last name, hire date and the day of the week on which the
> employee started. Label the column DAY. ORder the results by the day of
> the week starting with Monday"
>
> My question concerns the answer supplied in the text:
>
> "SELECT last_name, hire_date, TO_CHAR(hire_date,'fmDay')
> FROM employees
> ORDER by TO_CHAR(hire_date -1,'d')"
>
> I don't understand the ORDER BY clause.
>
> Specifically:
>
> 1) "hire_date -1"
> - My understanding is that Oracle's day 1 of a week is Sunday. It doesn't
> seem intuative to use "-1" to move a day forward? Am I misunderstanding
> something?
>
> 2) 'd'
> - What does this represent? I had assumed "day" but that substitution
> results in 'some other' weird grouping I don't understand. (ie. it groups
> all the days of the week but in no apparent order)
>
> Thanks in advance for any help!
>
> Jon

It moves the value of Monday to 1 and the value of Sunday to 7.

So the sort becomes Monday, Tuesday, .... Saturday, Sunday

Daniel Morgan Received on Wed Jul 17 2002 - 12:07:13 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US