Skip to content
  • Categories
  • Recent
  • Tags
  • Popular
  • World
  • Users
  • Groups
Skins
  • Light
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Default (No Skin)
  • No Skin
Collapse
Code Project
  1. Home
  2. The Lounge
  3. Job Application Test from Hell

Job Application Test from Hell

Scheduled Pinned Locked Moved The Lounge
databasequestioncareer
64 Posts 33 Posters 0 Views 1 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • C Christian Graus

    Is there any sense to that order ?

    Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.

    W Offline
    W Offline
    wolfbinary
    wrote on last edited by
    #11

    I was thinking the same thing.

    That's called seagull management (or sometimes pigeon management)... Fly in, flap your arms and squawk a lot, crap all over everything and fly out again... by _Damian S_

    1 Reply Last reply
    0
    • R realJSOP

      First, the data input routine allowed unvalidated data (the "CapeTown" entry). Second, it's apparently only ordered by region, and the name column doesn't have any brearing. In essense, you should have punched the interviewer in the mouth for wasting your time.

      .45 ACP - because shooting twice is just silly
      -----
      "Why don't you tie a kerosene-soaked rag around your ankles so the ants won't climb up and eat your candy ass..." - Dale Earnhardt, 1997
      -----
      "The staggering layers of obscenity in your statement make it a work of art on so many levels." - J. Jystad, 2001

      B Offline
      B Offline
      Brady Kelly
      wrote on last edited by
      #12

      It was by email, and solvable. Durban and Cape Town contacts are sorted by name in the requirement. All contacts are sorted only by Region in the input data.

      C 1 Reply Last reply
      0
      • B Brady Kelly

        I'm not looking for an answer here, I found my own, but this is quite a hard question. Given the table from Fig.1, write an SQL Select statement that would re-organize the results to look like Fig.2 Fig. 1

        Region

        Contact

        Cape Town

        Fred

        CapeTown

        Joe

        Cape Town

        Anna

        Durban

        John

        Durban

        Mary

        Johannesburg

        Frank

        Fig. 2

        Region

        Contact

        Durban

        John

        Durban

        Mary

        Johannesburg

        Frank

        Cape Town

        Anna

        CapeTown

        Fred

        Cape Town

        Joe

        P Offline
        P Offline
        PIEBALDconsult
        wrote on last edited by
        #13

        The correct answer is: "With which database system?" P.S. With Access/Jet via ADO.net:

        select * from RegionContact order by len(Region) mod 2,Region,Contact

        Region Contact


        Durban John
        Durban Mary
        Johannesburg Frank
        Cape Town Anna
        Cape Town Fred
        Cape Town Joe

        6 records affected.

        modified on Wednesday, November 24, 2010 4:03 PM

        A 1 Reply Last reply
        0
        • B Brady Kelly

          I'm not looking for an answer here, I found my own, but this is quite a hard question. Given the table from Fig.1, write an SQL Select statement that would re-organize the results to look like Fig.2 Fig. 1

          Region

          Contact

          Cape Town

          Fred

          CapeTown

          Joe

          Cape Town

          Anna

          Durban

          John

          Durban

          Mary

          Johannesburg

          Frank

          Fig. 2

          Region

          Contact

          Durban

          John

          Durban

          Mary

          Johannesburg

          Frank

          Cape Town

          Anna

          CapeTown

          Fred

          Cape Town

          Joe

          A Offline
          A Offline
          AspDotNetDev
          wrote on last edited by
          #14

          So here's my guess as to what the sort order is:

          • Sort by region, ascending, but making the first item group (by region) in that sort the last item. Do not consider whitespace in the sort order.
          • When two or more of the regions are the same (again, excluding whitespace), sort by contact ascending.

          Rather than follow those zany rules, I'd probably just do this:

          SELECT 'Durban' AS Region, 'John' AS Contact
          UNION
          SELECT 'Durban', 'Mary'
          UNION
          SELECT 'Johannesburg', 'Frank'
          UNION
          SELECT 'Cape Town', 'Anna'
          UNION
          SELECT 'CapeTown', 'Fred'
          UNION
          SELECT 'Cape Town', 'Joe'

          [Forum Guidelines]

          1 Reply Last reply
          0
          • B Brady Kelly

            I'm not looking for an answer here, I found my own, but this is quite a hard question. Given the table from Fig.1, write an SQL Select statement that would re-organize the results to look like Fig.2 Fig. 1

            Region

            Contact

            Cape Town

            Fred

            CapeTown

            Joe

            Cape Town

            Anna

            Durban

            John

            Durban

            Mary

            Johannesburg

            Frank

            Fig. 2

            Region

            Contact

            Durban

            John

            Durban

            Mary

            Johannesburg

            Frank

            Cape Town

            Anna

            CapeTown

            Fred

            Cape Town

            Joe

            A Offline
            A Offline
            Andy Brummer
            wrote on last edited by
            #15

            I hope the question was an attempt to see if you would back away from the keyboard and start asking questions. If not, they deserve all the gung ho developers that they get.

            Curvature of the Mind

            1 Reply Last reply
            0
            • B Brady Kelly

              How do you ensure the required ordering?

              S Offline
              S Offline
              Single Step Debugger
              wrote on last edited by
              #16

              We can’t use “order by” with the union but we could unite every single row separately – ugly but works.

              The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.

              1 Reply Last reply
              0
              • B Brady Kelly

                How do you ensure the required ordering?

                S Offline
                S Offline
                Single Step Debugger
                wrote on last edited by
                #17

                select * from (select * from dbo.RegionTable RT
                where RT.Region = 'Durban' order by RT.Contact asc) as union1
                union all
                select * from (select * from dbo.RegionTable RT
                where RT.Region = 'Johannesburg' order by RT.Contact asc) as union3
                union all
                select * from (select * from dbo.RegionTable RT
                where RT.Region = 'Cape Town' order by RT.Contact asc) as union2

                The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.

                C B 2 Replies Last reply
                0
                • S Single Step Debugger

                  select * from (select * from dbo.RegionTable RT
                  where RT.Region = 'Durban' order by RT.Contact asc) as union1
                  union all
                  select * from (select * from dbo.RegionTable RT
                  where RT.Region = 'Johannesburg' order by RT.Contact asc) as union3
                  union all
                  select * from (select * from dbo.RegionTable RT
                  where RT.Region = 'Cape Town' order by RT.Contact asc) as union2

                  The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.

                  C Offline
                  C Offline
                  Chris Meech
                  wrote on last edited by
                  #18

                  This will fail, since one of the regions has been entered as "CapeTown" instead of "Cape Town". :)

                  Chris Meech I am Canadian. [heard in a local bar] In theory there is no difference between theory and practice. In practice there is. [Yogi Berra] posting about Crystal Reports here is like discussing gay marriage on a catholic church’s website.[Nishant Sivakumar]

                  S 1 Reply Last reply
                  0
                  • B Brady Kelly

                    I'm not looking for an answer here, I found my own, but this is quite a hard question. Given the table from Fig.1, write an SQL Select statement that would re-organize the results to look like Fig.2 Fig. 1

                    Region

                    Contact

                    Cape Town

                    Fred

                    CapeTown

                    Joe

                    Cape Town

                    Anna

                    Durban

                    John

                    Durban

                    Mary

                    Johannesburg

                    Frank

                    Fig. 2

                    Region

                    Contact

                    Durban

                    John

                    Durban

                    Mary

                    Johannesburg

                    Frank

                    Cape Town

                    Anna

                    CapeTown

                    Fred

                    Cape Town

                    Joe

                    C Offline
                    C Offline
                    Chris Meech
                    wrote on last edited by
                    #19

                    The only obvious ordering sequence is the number of capitalized letters in Region, followed by the Region, followed by the Contact. :)

                    Chris Meech I am Canadian. [heard in a local bar] In theory there is no difference between theory and practice. In practice there is. [Yogi Berra] posting about Crystal Reports here is like discussing gay marriage on a catholic church’s website.[Nishant Sivakumar]

                    P 1 Reply Last reply
                    0
                    • B Brady Kelly

                      It was by email, and solvable. Durban and Cape Town contacts are sorted by name in the requirement. All contacts are sorted only by Region in the input data.

                      C Offline
                      C Offline
                      Christian Graus
                      wrote on last edited by
                      #20

                      OK, so it's sorted by two fields we can't see ( region and email address ) ?

                      Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.

                      G 1 Reply Last reply
                      0
                      • B Brady Kelly

                        I'm not looking for an answer here, I found my own, but this is quite a hard question. Given the table from Fig.1, write an SQL Select statement that would re-organize the results to look like Fig.2 Fig. 1

                        Region

                        Contact

                        Cape Town

                        Fred

                        CapeTown

                        Joe

                        Cape Town

                        Anna

                        Durban

                        John

                        Durban

                        Mary

                        Johannesburg

                        Frank

                        Fig. 2

                        Region

                        Contact

                        Durban

                        John

                        Durban

                        Mary

                        Johannesburg

                        Frank

                        Cape Town

                        Anna

                        CapeTown

                        Fred

                        Cape Town

                        Joe

                        T Offline
                        T Offline
                        Tomz_KV
                        wrote on last edited by
                        #21

                        select region, contact from ( select region, contact, case when region='Johannesburg' then 5 when region='Durban' then 1 else 10 end as Expr1 from TableName ) as Tbl order by Expr1, Contact

                        TOMZ_KV

                        S 1 Reply Last reply
                        0
                        • C Chris Meech

                          This will fail, since one of the regions has been entered as "CapeTown" instead of "Cape Town". :)

                          Chris Meech I am Canadian. [heard in a local bar] In theory there is no difference between theory and practice. In practice there is. [Yogi Berra] posting about Crystal Reports here is like discussing gay marriage on a catholic church’s website.[Nishant Sivakumar]

                          S Offline
                          S Offline
                          Single Step Debugger
                          wrote on last edited by
                          #22

                          No it won’t because the missing interval is due to the level of Brady’s BAC rather than the original task conditions. :)

                          The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.

                          B 1 Reply Last reply
                          0
                          • S Single Step Debugger

                            No it won’t because the missing interval is due to the level of Brady’s BAC rather than the original task conditions. :)

                            The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.

                            B Offline
                            B Offline
                            Brady Kelly
                            wrote on last edited by
                            #23

                            Haha, no, I suspect it was a typo on their part, but I treated it like I would a landmine. :~

                            P 1 Reply Last reply
                            0
                            • S Single Step Debugger

                              select * from (select * from dbo.RegionTable RT
                              where RT.Region = 'Durban' order by RT.Contact asc) as union1
                              union all
                              select * from (select * from dbo.RegionTable RT
                              where RT.Region = 'Johannesburg' order by RT.Contact asc) as union3
                              union all
                              select * from (select * from dbo.RegionTable RT
                              where RT.Region = 'Cape Town' order by RT.Contact asc) as union2

                              The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.

                              B Offline
                              B Offline
                              Brady Kelly
                              wrote on last edited by
                              #24

                              The ORDER BY clause is invalid in views, inline functions, derived tables, subqueries, and common table expressions, unless TOP or FOR XML is also specified. :) Here is mine, a little more general but very much the same:

                              select first.*, 0 outerSeq from (select top(select COUNT(*) from Contacts) * from Contacts where Region >= 'Durban' order by Region, Contact) first
                              union all
                              select second.*, 1 outerSeq from (select top (select COUNT(*) from Contacts) * from Contacts where Region < 'Durban' order by Region, Contact) as second
                              order by outerSeq

                              S 1 Reply Last reply
                              0
                              • B Brady Kelly

                                Haha, no, I suspect it was a typo on their part, but I treated it like I would a landmine. :~

                                P Offline
                                P Offline
                                PIEBALDconsult
                                wrote on last edited by
                                #25

                                What? Hold a protest rally outside the Pentagon? :confused:

                                1 Reply Last reply
                                0
                                • T Tomz_KV

                                  select region, contact from ( select region, contact, case when region='Johannesburg' then 5 when region='Durban' then 1 else 10 end as Expr1 from TableName ) as Tbl order by Expr1, Contact

                                  TOMZ_KV

                                  S Offline
                                  S Offline
                                  Single Step Debugger
                                  wrote on last edited by
                                  #26

                                  This is shorter than my solution, I like it!:thumbsup:

                                  The narrow specialist in the broad sense of the word is a complete idiot in the narrow sense of the word. Advertise here – minimum three posts per day are guaranteed.

                                  1 Reply Last reply
                                  0
                                  • B Brady Kelly

                                    I'm not looking for an answer here, I found my own, but this is quite a hard question. Given the table from Fig.1, write an SQL Select statement that would re-organize the results to look like Fig.2 Fig. 1

                                    Region

                                    Contact

                                    Cape Town

                                    Fred

                                    CapeTown

                                    Joe

                                    Cape Town

                                    Anna

                                    Durban

                                    John

                                    Durban

                                    Mary

                                    Johannesburg

                                    Frank

                                    Fig. 2

                                    Region

                                    Contact

                                    Durban

                                    John

                                    Durban

                                    Mary

                                    Johannesburg

                                    Frank

                                    Cape Town

                                    Anna

                                    CapeTown

                                    Fred

                                    Cape Town

                                    Joe

                                    P Offline
                                    P Offline
                                    Pete OHanlon
                                    wrote on last edited by
                                    #27

                                    Well, one way to do this would be to do something along the lines of:

                                    SELECT Region, Contact FROM WhatACrappyTest
                                    ORDER BY SUBSTRING(Region,2,1) DESC, Contact ASC

                                    This works based on the fact that the second character is ordered descending, and the contact orders ascending. This even takes the fact that your have CapeTown and Cape Town in the Region column. Obviously, the interviewer should be challenged on the validity of this question.

                                    I have CDO, it's OCD with the letters in the right order; just as they ruddy well should be

                                    Forgive your enemies - it messes with their heads

                                    My blog | My articles | MoXAML PowerToys | Onyx

                                    C A P 3 Replies Last reply
                                    0
                                    • P PIEBALDconsult

                                      The correct answer is: "With which database system?" P.S. With Access/Jet via ADO.net:

                                      select * from RegionContact order by len(Region) mod 2,Region,Contact

                                      Region Contact


                                      Durban John
                                      Durban Mary
                                      Johannesburg Frank
                                      Cape Town Anna
                                      Cape Town Fred
                                      Cape Town Joe

                                      6 records affected.

                                      modified on Wednesday, November 24, 2010 4:03 PM

                                      A Offline
                                      A Offline
                                      AspDotNetDev
                                      wrote on last edited by
                                      #28

                                      PIEBALDconsult wrote:

                                      Cape Town

                                      According to the OP, one of those should be without a space.

                                      [Forum Guidelines]

                                      P 1 Reply Last reply
                                      0
                                      • P Pete OHanlon

                                        Well, one way to do this would be to do something along the lines of:

                                        SELECT Region, Contact FROM WhatACrappyTest
                                        ORDER BY SUBSTRING(Region,2,1) DESC, Contact ASC

                                        This works based on the fact that the second character is ordered descending, and the contact orders ascending. This even takes the fact that your have CapeTown and Cape Town in the Region column. Obviously, the interviewer should be challenged on the validity of this question.

                                        I have CDO, it's OCD with the letters in the right order; just as they ruddy well should be

                                        Forgive your enemies - it messes with their heads

                                        My blog | My articles | MoXAML PowerToys | Onyx

                                        C Offline
                                        C Offline
                                        Christian Graus
                                        wrote on last edited by
                                        #29

                                        If I was the interviewer, I'd have hired you based on that answer.

                                        Christian Graus Driven to the arms of OSX by Vista. Read my blog to find out how I've worked around bugs in Microsoft tools and frameworks.

                                        1 Reply Last reply
                                        0
                                        • P Pete OHanlon

                                          Well, one way to do this would be to do something along the lines of:

                                          SELECT Region, Contact FROM WhatACrappyTest
                                          ORDER BY SUBSTRING(Region,2,1) DESC, Contact ASC

                                          This works based on the fact that the second character is ordered descending, and the contact orders ascending. This even takes the fact that your have CapeTown and Cape Town in the Region column. Obviously, the interviewer should be challenged on the validity of this question.

                                          I have CDO, it's OCD with the letters in the right order; just as they ruddy well should be

                                          Forgive your enemies - it messes with their heads

                                          My blog | My articles | MoXAML PowerToys | Onyx

                                          A Offline
                                          A Offline
                                          AspDotNetDev
                                          wrote on last edited by
                                          #30

                                          Vader (Star Wars Gangsta Rap):

                                          Impressive, now release your anger; can't you sense that your friends are in danger?

                                          The impressiveness of your solution and you being who you are reminded me of that quote. :)

                                          [Forum Guidelines]

                                          1 Reply Last reply
                                          0
                                          Reply
                                          • Reply as topic
                                          Log in to reply
                                          • Oldest to Newest
                                          • Newest to Oldest
                                          • Most Votes


                                          • Login

                                          • Don't have an account? Register

                                          • Login or register to search.
                                          • First post
                                            Last post
                                          0
                                          • Categories
                                          • Recent
                                          • Tags
                                          • Popular
                                          • World
                                          • Users
                                          • Groups