Почему этот набор строк сохраняется в предыдущем запросе? - PullRequest
0 голосов
/ 06 февраля 2019

Допустим, у меня есть сервер1 и 4 куба / базы данных на этом сервере (куб1, куб2, куб3 и куб4)

Я выполняю следующий запрос DMV набора строк в SSMS двумя способами:

  1. на уровне сервера или
  2. уровень куба

    SELECT [SESSION_USER_NAME], [SESSION_CURRENT_DATABASE] FROM $ SYSTEM.DISCOVER_SESSIONS

если я выполняю вышеупомянутый запрос MDX, скажем, на cube2, по какой-то причине информация сеанса cube3 также возвращается ...

, поэтому я получаю обратно что-то вроде

SESSION_USER_NAME |SESSION_CURRENT_DATABASE

пользователь |куб2

userx |cube2

пользователь |cube3

usery |cube2

если, скажем, я еще ничего не выполнил, и я выполняю на уровне сервера, я получаю аналогичный результат ... так что я знаю, что он не заботится о своем уровне сервера или уровне куба

тогда возникает вопрос: если этот запрос является агрегирующим, почему не включены другие кубы?Я попробовал это на двух других моих серверах, и он всегда возвращает около 2 кубов, даже когда я запрашиваю ОДИН куб. Затем, когда я продолжаю выполнять запрос на оставшихся кубах, информация о сеансе просто складывается / агрегируется и включает предыдущие кубы.а также поверх этого нового куба.

есть ли способ «очистить» запрос и игнорировать другие кубы?

...