Почему этот набор строк сохраняется в предыдущем запросе?

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

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

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

    ВЫБЕРИТЕ [SESSION_USER_NAME],[SESSION_CURRENT_DATABASE] из $SYSTEM.DISCOVER_SESSIONS

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

так что я возвращаюсь что-то вроде

SESSION_USER_NAME | SESSION_CURRENT_DATABASE

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

userx | cube2

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

польза | cube2

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

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

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

0 ответов

Другие вопросы по тегам