From ad94151963ff26c80e561df70cf9d6ffe1435a5e Mon Sep 17 00:00:00 2001 From: Haroon Javed Date: Wed, 7 Aug 2024 05:42:54 +0500 Subject: [PATCH] Scripts for DATETIME vs DATETIME2 in SQL Server --- .../adding-day-to-datetime.sql | 3 +++ .../datetime-and-datetime2-precision.sql | 4 ++++ .../sql-datetime-vs-datetime2/datetime-variable.sql | 12 ++++++++++++ .../sql-datetime-vs-datetime2/datetime.sql | 10 ++++++++++ .../datetime2-with-variable.sql | 2 ++ .../sql-datetime-vs-datetime2/datetime2.sql | 10 ++++++++++ .../rounding-datetime-and-datetime2.sql | 4 ++++ 7 files changed, 45 insertions(+) create mode 100644 sql-queries-dates/sql-datetime-vs-datetime2/adding-day-to-datetime.sql create mode 100644 sql-queries-dates/sql-datetime-vs-datetime2/datetime-and-datetime2-precision.sql create mode 100644 sql-queries-dates/sql-datetime-vs-datetime2/datetime-variable.sql create mode 100644 sql-queries-dates/sql-datetime-vs-datetime2/datetime.sql create mode 100644 sql-queries-dates/sql-datetime-vs-datetime2/datetime2-with-variable.sql create mode 100644 sql-queries-dates/sql-datetime-vs-datetime2/datetime2.sql create mode 100644 sql-queries-dates/sql-datetime-vs-datetime2/rounding-datetime-and-datetime2.sql diff --git a/sql-queries-dates/sql-datetime-vs-datetime2/adding-day-to-datetime.sql b/sql-queries-dates/sql-datetime-vs-datetime2/adding-day-to-datetime.sql new file mode 100644 index 00000000..f1840391 --- /dev/null +++ b/sql-queries-dates/sql-datetime-vs-datetime2/adding-day-to-datetime.sql @@ -0,0 +1,3 @@ +DECLARE @date1 DATETIME; +SET @date1 = GETDATE(); +SELECT @date1 + 1 as Tomorrow; \ No newline at end of file diff --git a/sql-queries-dates/sql-datetime-vs-datetime2/datetime-and-datetime2-precision.sql b/sql-queries-dates/sql-datetime-vs-datetime2/datetime-and-datetime2-precision.sql new file mode 100644 index 00000000..3e823c8a --- /dev/null +++ b/sql-queries-dates/sql-datetime-vs-datetime2/datetime-and-datetime2-precision.sql @@ -0,0 +1,4 @@ +DECLARE @datetime2 DATETIME2(7), @datetime DATETIME; +SET @datetime2 = '2024-08-06 18:34:10.2333333'; +SET @datetime = '2024-08-06 18:34:10.233'; +SELECT @datetime AS 'datetime', @datetime2 AS 'datetime2'; \ No newline at end of file diff --git a/sql-queries-dates/sql-datetime-vs-datetime2/datetime-variable.sql b/sql-queries-dates/sql-datetime-vs-datetime2/datetime-variable.sql new file mode 100644 index 00000000..5def9ed2 --- /dev/null +++ b/sql-queries-dates/sql-datetime-vs-datetime2/datetime-variable.sql @@ -0,0 +1,12 @@ +DECLARE @date1 DATETIME = '2024-08-15 10:30:00'; + +CREATE TABLE Appointments ( +AppointmentDate DATETIME +); + +INSERT INTO Appointments (AppointmentDate) +VALUES (@date1); + +SELECT AppointmentDate +FROM Appointments +WHERE AppointmentDate = @date1; \ No newline at end of file diff --git a/sql-queries-dates/sql-datetime-vs-datetime2/datetime.sql b/sql-queries-dates/sql-datetime-vs-datetime2/datetime.sql new file mode 100644 index 00000000..b195b423 --- /dev/null +++ b/sql-queries-dates/sql-datetime-vs-datetime2/datetime.sql @@ -0,0 +1,10 @@ +CREATE TABLE Appointments ( +AppointmentDate DATETIME +); + +INSERT INTO Appointments (AppointmentDate) +VALUES ('2024-08-15 10:30:00.000'); + +SELECT AppointmentDate +FROM Appointments +WHERE AppointmentDate = '2024-08-15 10:30:00.000'; \ No newline at end of file diff --git a/sql-queries-dates/sql-datetime-vs-datetime2/datetime2-with-variable.sql b/sql-queries-dates/sql-datetime-vs-datetime2/datetime2-with-variable.sql new file mode 100644 index 00000000..8115ce1b --- /dev/null +++ b/sql-queries-dates/sql-datetime-vs-datetime2/datetime2-with-variable.sql @@ -0,0 +1,2 @@ +DECLARE @date2 DATETIME2 = '2022-01-01 12:30:00.1234567'; +SELECT @date2; \ No newline at end of file diff --git a/sql-queries-dates/sql-datetime-vs-datetime2/datetime2.sql b/sql-queries-dates/sql-datetime-vs-datetime2/datetime2.sql new file mode 100644 index 00000000..da57799e --- /dev/null +++ b/sql-queries-dates/sql-datetime-vs-datetime2/datetime2.sql @@ -0,0 +1,10 @@ +CREATE TABLE Events ( +EventTime DATETIME2 +); + +INSERT INTO Events (EventTime) +VALUES ('2024-08-05 10:30:00.12345'); + +SELECT EventTime +FROM Events +WHERE EventTime = '2024-08-05 10:30:00.12345'; \ No newline at end of file diff --git a/sql-queries-dates/sql-datetime-vs-datetime2/rounding-datetime-and-datetime2.sql b/sql-queries-dates/sql-datetime-vs-datetime2/rounding-datetime-and-datetime2.sql new file mode 100644 index 00000000..f3d3c876 --- /dev/null +++ b/sql-queries-dates/sql-datetime-vs-datetime2/rounding-datetime-and-datetime2.sql @@ -0,0 +1,4 @@ +DECLARE @date1 datetime, @date2 datetime2(3); +SET @date2 = '2024-12-03 11:25:20.5782441'; +SET @date1 = @date2; +SELECT @date1 AS 'datetime', @date2 AS 'datetime2'; \ No newline at end of file