Oracle FAQ | Your Portal to the Oracle Knowledge Grid |
Home -> Community -> Usenet -> c.d.o.misc -> Re: Oracle Newbie - SQL question
Hi Daniel,
Thank for you response. Your answer seems to make a bit more sense to me (or at least jive with my understanding of how the query executes)
A couple question though (please correct me if I am making wrong assumptions):
How does Sunday -1 =Monday? Isn't that like 1-1=2?
2. What does the 'd' represent.
Sorry if I am asking a dumb question here :-) Thanks again!
jon
"Daniel Morgan" <dmorgan_at_exesolutions.com> wrote in message
news:3D35A407.6B60BFCF_at_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 - 13:02:22 CDT