Запрос SQL Server с диапазоном дат и функцией max - PullRequest
0 голосов
/ 10 июля 2019

У меня есть две таблицы, TBL_TRANSACTION(NUM_ID,TRANS_DATE,TRANS_TYPE,TOTAL_SUM) и TBL_PERSONS(NUM_ID,NAME)

Я хочу получить результат этого запроса: выберите столбцы NAME, NUM_ID и TRANS_DATE из двух таблиц с условием (Names that don't have a transaction between the current date and DATEADD(YYYY,-1,GETDATE()))) and TRANS_TYPE=1

SELECT  dbo.TBL_TRANSACTION.NUM_ID, dbo.TRANSACTION.TRANS_DATE, dbo.TBL_PERSON.NAME, dbo.TBL_PERSON.TOTAL_SUM
FROM    dbo.TBL_TRANSACTION INNER JOIN
        dbo.TBL_PERSON ON dbo.TBL_TRANSACTION.NUM_ID = dbo.TBL_PERSON.NUM_ID
WHERE  (dbo.TBL_TRANSACTION.TRANS_DATE NOT BETWEEN DATEADD(yyyy, - 1, GETDATE()) AND GETDATE()) AND TRANS_TYPE =1

Тем не менее, я не получаю результатов от вышеупомянутого.

1 Ответ

1 голос
/ 10 июля 2019

Некоторая корректировка в фильтрации даты сделана в следующем запросе.Можете ли вы проверить это-

SELECT T1.NUM_ID, 
       T1.TRANS_DATE, 
       T2.NAME, 
       T2.TOTAL_SUM
FROM dbo.TBL_TRANSACTION T1
     INNER JOIN dbo.TBL_PERSON T2 ON T1.NUM_ID = T2.NUM_ID
WHERE T1.TRANS_DATE < DATEADD(yyyy, -1, GETDATE())
     AND TRANS_TYPE = 1;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...