Question: I need to get records by filtering a dat column from "first saturday of february of the year" to "1st of february of next year"

My Query would be something like this:

SELECT \* FROM EMPLOYEE WHERE HireDate BETWEEN "first saturday of february of the year" and "1st of february of next year"

Answer: 
If you don't have a Calendar or Tally table, perhaps something like this.

**Example**

```
Declare @Date1 date = '2018-02-01'
Declare @Date2 date = '2019-02-01'

Select E.*
 From  Employee E
 Join (
        Select DateR1=min(case when DateName(WEEKDAY,D)='Saturday' then D end)
              ,DateR2=max(D)
         From (Select Top (DateDiff(DAY,@Date1,@Date2)+1) D=DateAdd(DAY,-1+Row_Number() Over (Order By (Select Null)),@Date1) 
                From  master..spt_values n1,master..spt_values n2
              ) A
       ) D on E.HierDate between D.DateR1 and D.DateR2

```
Here's one way, assuming `datefirst` is 7 and that you have `datefromparts()` available:

```
set datefirst 7
declare @dt1 date = datefromparts(year(current_timestamp), 2, 1);
set @dt1 = dateadd(day, 7 - datepart(weekday, @dt1), @dt1);

declare @dt2 date = datefromparts(year(current_timestamp) + 1, 2, 1);
set @dt2 = dateadd(day, 7 - datepart(weekday, @dt2), @dt2);

```

If you need to do the calculation inline then just expand by substitution:

```
between
dateadd(day, 7 - datepart(weekday, datefromparts(year(current_timestamp), 2, 1)), datefromparts(year(current_timestamp), 2, 1))
and
dateadd(day, 7 - datepart(weekday, datefromparts(year(current_timestamp) + 1, 2, 1)), datefromparts(year(current_timestamp) + 1, 2, 1))

```