Working with temporal data in SQL Server is not supported out of the box. Learn how to implement temporal support in a SQL Server database with all of the constraints needed, and how to optimize your temporal queries.
Although temporal data is part of many business applications, most RDBMS', including SQL Server, do not support it out of the box. However, before solving the problem, you need to understand it. After an introduction to temporal problems and constraints, you will learn how to implement the solutions. Many solutions are much simpler with the help of a special Interval CLR data type. Additional relational operators PACK and UNPACK are handy as well. Of course, these two operators do not exist in the Transact-SQL language. You will learn how to implement them with help of other language elements. Having a SQL Server solution for a problem does not mean the job is done. Of course, the next immediate issue is performance. Temporal queries that involve intervals are typically very IO and CPU intensive. For example, a test for overlapping intervals was solved with inefficient queries for years. However, a handful of solutions with fast queries was developed recently. This course introduces five different methods to get efficient queries that search for overlapping intervals, one of the most complex temporal problems. Of course, these solutions can be implemented for other temporal problems as well. All the solutions presented should work on any edition of SQL Server from 2008 to 2014.
Dejan Sarka, MCT and SQL Server MVP, is an independent consultant, trainer, and developer focusing on database & business intelligence applications. His specialties are advanced topics like data modeling, data mining, and data quality.