query on old employee table

  • Hi all

    one more tricky query I have encountered..(@ an interview)..

    we have employee table with manager name and salary..

    now the question is..write a query to display employee records order by salary

    and the manager record should be the first record in the result...


    Thanks ,

    Shekhar

  • select 1 as myorderBy,name,salary from sometable where manager='Y'

    UNION ALL

    select 2 as myorderBy,name,salary from sometable where manager='N'

    ORDER BY myorderBy,salary

    Lowell


    --help us help you! If you post a question, make sure you include a CREATE TABLE... statement and INSERT INTO... statement into that table to give the volunteers here representative data. with your description of the problem, we can provide a tested, verifiable solution to your question! asking the question the right way gets you a tested answer the fastest way possible!

  • hey Lowell

    that was awe some... thank u very much.. 🙂


    Thanks ,

    Shekhar

  • another way without the UNION:

    select

    CASE

    WHEN manager='Y'

    THEN 1

    ELSE 2

    END

    as myorderBy,name,salary

    from sometable

    ORDER BY myorderBy,salary

    Lowell


    --help us help you! If you post a question, make sure you include a CREATE TABLE... statement and INSERT INTO... statement into that table to give the volunteers here representative data. with your description of the problem, we can provide a tested, verifiable solution to your question! asking the question the right way gets you a tested answer the fastest way possible!

  • Thank you very much lowell... 🙂


    Thanks ,

    Shekhar

Viewing 5 posts - 1 through 4 (of 4 total)

You must be logged in to reply to this topic. Login to reply