Почему этот набор строк сохраняется в предыдущем запросе?
Допустим, у меня есть сервер1 и 4 куба / базы данных на этом сервере (куб1, куб2, куб3 и куб4)
Я выполняю следующий запрос набора строк DMV в SSMS двумя способами:
- либо на уровне сервера, либо
уровень куба
ВЫБЕРИТЕ [SESSION_USER_NAME],[SESSION_CURRENT_DATABASE] из $SYSTEM.DISCOVER_SESSIONS
если я выполняю вышеупомянутый запрос MDX, скажем, на cube2, по какой-то причине информация о сеансе cube3 также возвращается...
так что я возвращаюсь что-то вроде
SESSION_USER_NAME | SESSION_CURRENT_DATABASE
пользователь | cube2
userx | cube2
пользователь | cube3
польза | cube2
если, скажем, я еще ничего не выполнил, и я выполняю на уровне сервера, я получаю аналогичный результат... так что я знаю, что он не заботится о том, является ли его уровень сервера или уровень куба
тогда возникает вопрос: если этот запрос является агрегирующим, почему не включены другие кубы? Я попробовал это на двух других моих серверах, и он всегда возвращает около 2 кубов, даже когда я запрашиваю ОДИН куб. Затем, когда я продолжаю выполнять запрос на оставшихся кубах, информация о сеансе просто складывается / агрегируется и включает предыдущие кубы. а также на вершине этого нового куба.
Есть ли способ "очистить" запрос и игнорировать другие кубы?