Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 Подсчитать количество строк запроса  [new]
Jajer13
Member

Откуда:
Сообщений: 6
Всем привет.
У меня есть следующий запрос:
SELECT INVS.ParticipantKey, MIN(CASE WHEN FPS.EndDateKey <> -2 AND FPS.EndDateKey > FPS.DefinedEndDateKey
                                        AND FPS.EndDateKey > @PeriodEndDateKey AND FPS.DefinedEndDateKey < @PeriodEndDateKey
                                        THEN 1
                                        ELSE 0
                                    END) as InRunout,
                                    MAX(CASE WHEN DP.AccountKey = 6 THEN 1 ELSE 0 END) as HasHSA,
                                    MAX(FPS.StartDateKey) as MostCurrentEnrollment
        FROM SupportFile.InvoicableSubscription as INVS
        INNER JOIN Evolution1.FactProductSubscription as FPS
            ON FPS.SubscriptionKey = INVS.SubscriptionKey AND FPS.StartDateKey = INVS.StartDateKey
        INNER JOIN Evolution1.DimProduct as DP
            ON DP.ProductKey = FPS.ProductKey
        GROUP BY INVS.ParticipantKey


Мне нужно в этом запросе посчитать количество строк следующего запроса: SELECT MAX(FPS.EndDateKey) WHERE FPS.EndDateKey <>-2. Это можно впихнуть в 1 запрос? Подскажите пожалуйста
16 окт 15, 19:16    [18289740]     Ответить | Цитировать Сообщить модератору
 Re: Подсчитать количество строк запроса  [new]
iap
Member

Откуда: Москва
Сообщений: 47198
Jajer13
Мне нужно в этом запросе посчитать количество строк следующего запроса: SELECT MAX(FPS.EndDateKey) WHERE FPS.EndDateKey <>-2.
Я могу ответить за одну пикосекунду вместо сервера!!
Количество строк данного запроса равно 1
16 окт 15, 19:28    [18289785]     Ответить | Цитировать Сообщить модератору
 Re: Подсчитать количество строк запроса  [new]
Jajer13
Member

Откуда:
Сообщений: 6
Круто, спасибо) На как бы мне это получить с помощью SQL)
16 окт 15, 19:30    [18289793]     Ответить | Цитировать Сообщить модератору
 Re: Подсчитать количество строк запроса  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 9169
Jajer13,

А сколько строк максимальных значений, по-вашему, может существовать у такого запроса?
16 окт 15, 19:56    [18289909]     Ответить | Цитировать Сообщить модератору
 Re: Подсчитать количество строк запроса  [new]
o-o
Guest
а вы видели, как можно мозги оптимизатору запудрить?
если спросить дословно "сколько строк это вернет", он тоже ответ даст "не глядя"

К сообщению приложен файл. Размер - 51Kb
16 окт 15, 22:00    [18290451]     Ответить | Цитировать Сообщить модератору
 Re: Подсчитать количество строк запроса  [new]
o-o
Guest
а если спросить, сколько *максов* вернет запрос,
он пойдет сканить, хотя это самое City not null.

только... сейчас до меня дошло, что там же условие <> -2, так что ему придется действитально сканить,
ну вдруг у меня все города как раз "-2".

так что все правильно, это просто у меня пятница.
а даже ежику оптимизатору ясно, что именно строк гарантированно одна

К сообщению приложен файл. Размер - 69Kb
16 окт 15, 22:13    [18290491]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить