SQL for not registering employees for conflicting appointments!


I was once asked by a fellow colleague if it was possible to have an SQL statement that would not allow employees from being registered to events that occur simultaneously.

Scenario

Consider a database that stores a list of persons and a list of events. Employees would eventually be registered as event attendees. It is possible that multiple events occur at the same time and therefore it is required that the SQL statement prevent any persons from being registered as attendees of conflicting events. It was required that the solution be all in one SQL statement for some reason whatsoever.

The SQL solution is found attached together with a supporting report! As always all feedback and queries are welcome!

Register employees for non conflicting events

Advertisements

Author: Frankie Inguanez

I am a Data & Software Consultant from Malta with a specialisation in Business Intelligence & Data Mining. Currently, a senior lecturer and software developer at MCAST focusing on Databases, Business Intelligence and Applied Computational Intelligence modules at degree level. As a developer, I have been working on the development of a management information system together in a small team using PostgreSQL, Spring, Jira, Confluence, Git, amongst other tools. My first degree was a B.Sc.(Hons.) at the University of Malta then I graduated at De Montfort University in M.Sc. Business Intelligence Systems and Data Mining where I was recognised with the Best Student and Best Project awards. My postgraduate research was then presented and published in an IEEE conference in Berlin in 2016. During my free time, I try to find a balance between photography, diving, guitar playing and an occasional camping or walk in the countryside.

3 thoughts on “SQL for not registering employees for conflicting appointments!”

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s