Still celebrating National IT Professionals Day with 3 months of free Premium Membership. Use Code ITDAY17

x
Solved

# Get Tuesday through Monday in query

Posted on 2013-10-22
Medium Priority
296 Views
I want to pull data from last week to this week starting on Tuesday of last week through the next Monday (of the current week).
0
Question by:williamss132
[X]
###### Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

• Help others & share knowledge
• Earn cash & points
• 2

LVL 66

Accepted Solution

Jim Horn earned 2000 total points
ID: 39592233
Here's the code to get the current day of the week (1=Sunday to 7-Saturday)
``````SELECT DATEPART(dw, GETDATE())
``````
So, doing a little math...
``````Declare @dt date = '10-25-13'

SELECT DATEADD(d,  - (DATEPART(dw, @dt) + 2), @dt) as last_thursday,
DATEADD(d,  - (DATEPART(dw, @dt) - 2), @dt) as this_monday
``````
btw Here's an article I wrote on How to build your own SQL Calendar Table that demonstrates lots of goofy-riffic date expressions you can use.
0

LVL 9

Expert Comment

ID: 39592281
Here is how you can determine the most recent Tuesday:
``````DECLARE @myTuesdayDate date, @myMondayDate date;
SELECT @myTuesdayDate = DATEADD(DAY, DATEDIFF(DAY, 2, GETDATE()) / 7 * 7, 1);
``````
Assign this to a date variable, then do a
``````SELECT @myMondayDate = DATEADD(day, 6, @myTuesdayDate)
``````
and you get your next Monday.  Then use these values as a range for your select
0

LVL 66

Expert Comment

ID: 39611684
0

## Featured Post

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Why is this different from all of the other step by step guides?  Because I make a living as a DBA and not as a writer and I lived through this experience. Defining the name: When I talk to people they say different names on this subject stuff l…