Here we will see, how to calculate the number of weeks between the two given dates with the help of SQL query using DATEDIFF() function.
For the purpose of demonstration, we will be creating a demo_orders table in a database called “geeks“.
Creating the Database:
Use the below SQL statement to create a database called geeks:
CREATE DATABASE geeks;
Using the Database:
Use the below SQL statement to switch the database context to geeks:
USE geeks;
Table Definition:
We have the following demo table in our geeks database.
CREATE TABLE demo_orders(
ORDER_ID INT IDENTITY(1,1) PRIMARY KEY,
ITEM_NAME VARCHAR(30) NOT NULL,
ORDER_DATE DATE NOT NULL
);
You can use the below statement to query the description of the created table:
EXEC SP_COLUMNS demo_orders;

Adding data to the table:
Use the below statement to add data to the demo_orders table:
INSERT INTO demo_orders --no need to mention columns explicitly as we are inserting
--into all columns and ID gets
--automatically incremented.
VALUES
('Maserati', '2007-10-03'),
('BMW', '2010-07-23'),
('Mercedes Benz', '2012-11-12'),
('Ferrari', '2016-05-09'),
('Lamborghini', '2020-10-20');
To verify the contents of the table use the below statement:
SELECT * FROM demo_orders;

Now let’s find the number of weeks between the dates of the order of ‘Maserati’ and ‘Ferrari’ in the table using DATEDIFF() function.
Below is the syntax for the DATEDIFF() function to find the no. of weeks between two given dates.
Syntax: DATEDIFF(week or ww or wk, <start_date>, <end_date>);
Example:
DECLARE
@start VARCHAR(10) = (
SELECT order_date FROM demo_orders
WHERE item_name = 'Maserati'),
@end VARCHAR(10) = (
SELECT order_date FROM demo_orders
WHERE item_name = 'Ferrari')
--@start variable holds the start date(i.e date of Maserati being purchased).
--@end variable holds the end date (i.e date of Ferrari being purchased).
SELECT DATEDIFF(ww, @start, @end) AS number_of_weeks;
Output:

Unlock the Power of Placement Preparation!
Feeling lost in OS, DBMS, CN, SQL, and DSA chaos? Our
Complete Interview Preparation Course is the ultimate guide to conquer placements. Trusted by over 100,000+ geeks, this course is your roadmap to interview triumph.
Ready to dive in? Explore our Free Demo Content and join our
Complete Interview Preparation course.
Last Updated :
23 Apr, 2021
Like Article
Save Article