Advertisement
Guest User

Untitled

a guest
Jun 29th, 2016
54
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.65 KB | None | 0 0
  1. create table employee (
  2. employee_id bigint not null primary key,
  3. first_name varchar(50) not null,
  4. middle_name varchar(50) null,
  5. last_name varchar(50) not null
  6. )
  7.  
  8. create table eligibility (
  9. eligibility_id bigint not null primary key,
  10. employee_id bigint not null foreign key references employee (employee_id),
  11. effective_date date not null,
  12. sequence_number int not null,
  13. value varchar(20) not null,
  14. constraint UK_eligibility unique (employee_id, effective_date, sequence_number)
  15. )
  16.  
  17. insert into employee (employee_id, first_name, middle_name, last_name) values (1001, 'A', 'B', 'C')
  18.  
  19. insert into eligibility (eligibility_id, employee_id, effective_date, sequence_number, value) values (1, 1001, '2016-04-13', 1, 'NS')
  20. insert into eligibility (eligibility_id, employee_id, effective_date, sequence_number, value) values (2, 1001, '2016-05-25', 1, 'EX')
  21. insert into eligibility (eligibility_id, employee_id, effective_date, sequence_number, value) values (3, 1001, '2016-05-25', 2, 'VR')
  22. insert into eligibility (eligibility_id, employee_id, effective_date, sequence_number, value) values (4, 1001, '2016-06-05', 1, 'LS')
  23.  
  24. select * from eligibility e
  25. where
  26. e.effective_date = (select max(effective_date)
  27. from eligibility e1
  28. where e1.employee_id = e.employee_id and
  29. e1.effective_date <= '2016-05-30') AND
  30. e.sequence_number = (select max(sequence_number)
  31. from eligibility e2
  32. where e2.employee_id = e.employee_id and
  33. e2.effective_date = e.effective_date)
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement