Простой SQL-запрос: нужны данные за этот месяц и данные за последние 5 дней предыдущего месяца вместе

#sql #sql-server #date #dayofweek #days

#sql #sql-server #Дата #день недели #дней

Вопрос:

Нужен SQL-запрос для данных за этот месяц и данных за последние 5 дней предыдущего месяца вместе:

 SELECT
  CONVERT(VARCHAR (10), wDate, 103) AS wDate,
  Empid,
  Process,
  Model,
  Qty,
  Section,
  Avlbl_Mins,
  NP_Mins,
  L_Mins,
  NP_Reason       AS NPReason,
  Process_Remarks AS PRem,
  Day_Remarks     AS DRem,
  Othermin,
  StdMin,
  Tstdmin,
  TAvlblmin
FROM tblProductionEffcyDetails
WHERE (DAY(EnteredDate) >= DAY(GETDATE()) - 5)
ORDER BY EnteredDate DESC
  

Комментарии:

1. откуда вы хотите получить данные???

2. Вы пробовали что-нибудь

3. пробовал всего 5 дней; пожалуйста, посмотрите последнее редактирование

4. Вы действительно используете Mysql , синтаксис запроса принадлежит SQL SERVER

Ответ №1:

Попробуйте это: чтобы получить данные за последние месяцы за последние пять дней

 WHERE EnteredDate > (DATEADD(DAY,-5,DATEADD(month, DATEDIFF(month, 0, GETDATE()), 0))
  

Ответ №2:

Для SQL SERVER 2012 использования этого

 WHERE  EnteredDate >=  dateadd(dd,-4,eomonth(getdate(),-1)) 
  and  EnteredDate < dateadd(dd,1,eomonth(getdate()))
  

Для более старых версий

 WHERE  EnteredDate >=  dateadd(dd,-5,DATEADD(month, DATEDIFF(month, 0, getdate()), 0)) 
  and EnteredDate < DATEADD(d, -1, DATEADD(m, DATEDIFF(m, 0, getdate())   1, 0))
  

Комментарии:

1. Я использую SQL SERVER 2012

2. @user3926897 — Конечно, это правильное требование.. Последние 5 дней за предыдущий месяц и данные за текущий месяц