Присоединяйтесь к 2 избранным утверждениям, которые не имеют ничего общего - PullRequest
0 голосов
/ 10 декабря 2018

У меня есть хранимые процедуры, которые выполняют разные задачи, но я хотел бы соединить некоторые из них, чтобы уменьшить количество хранимых процедур, созданных в базе данных.Многие процедуры основаны на статистике по годам, и вот пример:

Select 
DATENAME(MONTH, DATE_) AS Date,
 count(distinct VATNUMBER) As Count
from 
   (
    select VATNUMBER, DATE_ = min(DATE_)
    from
    ACCOUNTS a inner join CUSTTABLE b
    on a.ID= b.ID
    where ITEMNUMBER in(7055,7056,7059) AND YEAR(a.DATE_) = '2017'
    AND VATNUMBER NOT IN (
    select VATNUMBER
    from
    ACCOUNTS a inner join CUSTTABLE b
    on a.ID= b.ID
    where ITEMNUMBER in(7055,7056,7059)
    AND DATE_ < '2017-01-01'
)
group by VATNUMBER
) d
group by MONTH(DATE_), DATENAME(MONTH, DATE_)
Order by MONTH(DATE_)

Результат за 2017 год:

    Date     |   Count
    January  |   61
    February |   43
    March    |   23
    April    |   48
    etc....

И теперь у меня такая же Процедура для 2018 года:

 Select 
    DATENAME(MONTH, DATE_) AS Date,
     count(distinct VATNUMBER) As Count
    from 
       (
        select VATNUMBER, DATE_ = min(DATE_)
        from
        ACCOUNTS a inner join CUSTTABLE b
        on a.ID= b.ID
        where ITEMNUMBER in(7055,7056,7059) AND YEAR(a.DATE_) = '2018'
        AND VATNUMBER NOT IN (
        select VATNUMBER
        from
        ACCOUNTS a inner join CUSTTABLE b
        on a.ID= b.ID
        where ITEMNUMBER in(7055,7056,7059)
        AND DATE_ < '2018-01-01'
    )
    group by VATNUMBER
    ) d
    group by MONTH(DATE_), DATENAME(MONTH, DATE_)
    Order by MONTH(DATE_)

Результат за 2018 год:

    Date     |   Count
    January  |   119
    February |   200
    March    |   112
    April    |   87
    etc....

Я хотел бы поместить оба оператора select в одну и ту же хранимую процедуру.Результат, который я хотел бы видеть:

    Date 2017|   Count  | Date 2018|   Count
    January  |   61     | January  |   119
    February |   43     | February |   200
    March    |   23     | March    |   112
    April    |   48     | April    |   87
    etc....
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...