Interview Question Software Engineer / Developers

  • 0
    of 0 votes
    1
    Answer

    create a database schema for...

    an application that tracks a bunch of users. the application has a list of races and users can sign up to run for races.
    the application also keeps track of if the user has completed their race

    give me queries for the following use cases:
    1. all the users in the app
    2. all the races that a user has signed up for
    3. all the races that a user has finished racing
    4. all the races that a has signed up for but not raced (meaning they signed up for a race but the race is over and they didn't run in it)
    5. find the races that any two users share

    - zkolhz on March 06, 2012 in United States Report Duplicate | Flag
    Software Engineer / Developer Database

Country: United States
Interview Type: Written Test


Comment hidden because of low score. Click to expand.
0
of 0 vote

create table user(
userid int, 
username varchar(200) 
)

create table race(
raceid int, 
racename varchar(200)
)


create table user_race(
userid int, 
raceid int, 
iscompleted varchar(2)
)
/*1*/
select * from user; 

/*2*/
select r.* from race r where exists 
(select 1 from user_race ur where ur.raceid = r.raceid and ur.userid = '::USERID::'); 

/*3*/
select r.* from race r where
exists 
(select 1 from user_race ur 
 where ur.raceid = r.raceid 
   and ur.iscompleted = '1'
   and ur.userid = '::USERID::')


/*4*/
select r.* from race r where
exists 
(select 1 from user_race ur 
  where ur.raceid = r.raceid 
    and ur.iscompleted = '0'
    and ur.userid = ':::USERID:')

/*5*/
select r.raceid
from user u, user_race ur, race r
where 
u.userid = ur.userid and ur.raceid = r.raceid
group by r.raceid
having COUNT(ur.userid) = 2

- J.T. on May 21, 2012 | Flag Reply


Add a Comment
Name:

Writing Code? Surround your code with {{{ and }}} to preserve whitespace.

Books

is a comprehensive book walking you through every aspect of getting a job at a top tech company, while focuses on software engineering interviews.

Learn More

Videos

CareerCup's interview videos give you a real-life look at technical interviews. In these unscripted videos, watch how other candidates handle tough questions and how the interviewer thinks about their performance.

Learn More

Resume Review

Most engineers make critical mistakes on their resumes -- we can fix your resume with our custom resume review service. And, we use fellow engineers as our resume reviewers, so you can be sure that we "get" what you're saying.

Learn More

Mock Interviews

Our Mock Interviews will be conducted "in character" just like a real interview, and can focus on whatever topics you want. All our interviewers have worked for Microsoft, Google or Amazon, you know you'll get a true-to-life experience.

Learn More