Danger! Danger! Float value!

Danger! Danger! Float value!

I’m not saying that floating point numbers are the devil, and I’m not saying that the float data type should be avoided. But they should only be used when it’s entirely necessary and appropriate. The hidden danger of improper use can can become a ticking time bomb! Most (if not all) dangers come from FLOATs…

Read More Read More

Dates In Oracle: Ranges, Manipulation & Loops

Dates In Oracle: Ranges, Manipulation & Loops

Having spent a lot of time looking at dates in SQL Server, I thought I’d take some time to publish some notes on dates in Oracle. Most of the ideas are the same, but there are some subtleties. After my SQL Server articles: Dates In SQL Server: Managing & Manipulating Dates Dates In SQL Server:…

Read More Read More

Dates In SQL Server: Public Holidays

Dates In SQL Server: Public Holidays

For most business reporting, public holidays (or other special days) cary much business impact. Here are some ideas on solutions. It usually doesn’t take long with a data warehouse project before we want to enhance our calendar. Holidays aren’t built into DBMS systems by default, so we have to create our own solution. I feel…

Read More Read More

Dates In SQL Server: The last X of the month

Dates In SQL Server: The last X of the month

Finding the last X day of the month isn’t as easy as you might think. I learned this when people wanted to build a calendar for planning and automation. This is a neat addition to the article: Dates In SQL Server: Weekdays & Weekends Create sample date data From my previous article, the below SQL will…

Read More Read More

Dates In SQL Server: Ambiguous date specification

Dates In SQL Server: Ambiguous date specification

When writing a date in a script, there are a number of ways of doing it, the server uses geographic settings to imply the format. This has some hidden dangers. UK and US dates switch the day and month around. If there are changes in geographic settings and the date format isn’t explicit, there can…

Read More Read More

Dates In SQL Server: Weekdays & Weekends

Dates In SQL Server: Weekdays & Weekends

For reporting or for process management, it’s handy to be able to quickly identify weekdays and weekends. Here I’ll look at a few methods for calculating weekdays and weekends. Some of these come easily from SQL Server, others require a bit more manipulation. Most of this builds on my previous articles on dates: Dates In…

Read More Read More

Dates In SQL Server: Adding & subtracting

Dates In SQL Server: Adding & subtracting

Different DBMS systems have different ways of managing dates. As I’m doing a series of articles on dates, I thought I’d throw some notes down about calculating the difference between some of them. Testing dataset Picking up from my article on Dates In SQL Server: Create Sample Date Ranges I’ll use a sample from there to create…

Read More Read More

Dates In SQL Server: Iteration of Date Ranges

Dates In SQL Server: Iteration of Date Ranges

When performing ETL functions, it’s often required to run processes with iteration over a given date range. Here are some examples of iterating over dates. These methods can also be applied to other cases where we want to do some iteration. After my previous posts looking at dates, particularly Dates In SQL Server: Create Sample Date Ranges. I…

Read More Read More

Dates In SQL Server: Create Sample Date Ranges

Dates In SQL Server: Create Sample Date Ranges

A data set of continuous dates is useful for cursors and creating date tables. Here I look at ways to produce a list of dates. Continuing my series of posts about dates, I wanted to post something which feeds into lots of examples and testing cases I use day to day in development. I’ll also…

Read More Read More

Dates In SQL Server: DATETIME2 vs SMALLDATETIME

Dates In SQL Server: DATETIME2 vs SMALLDATETIME

While working on the first article about dates Dates In SQL Server: Managing & Manipulating Dates, I touched on the datatypes and realised that it’s worth devoting some time to the subtle but potentially dangerous difference between these two. I previously said: If you need to include time (so not just the whole day) then…

Read More Read More