我目前面临监控 mssql 服务器的任务,我想大致了解 tempDB 中的待处理/正在运行的事务。
我使用以下查询来获取事务表及其 elapsed_time_seconds
SELECT
a.session_id
, a.transaction_id
, a.transaction_sequence_num
, a.elapsed_time_seconds
, b.program_name
, b.open_tran
, b.STATUS
FROM sys.dm_tran_active_snapshot_database_transactions a
JOIN sys.sysprocesses b ON a.session_id = b.spid
ORDER BY elapsed_time_seconds DESC
问题:如果表为空,此查询不会返回任何内容。甚至没有NULL。另外我不会说 SQL。
我试图将 COALESCE 和 ISNULL 放在不同行的查询中,但这没有帮助。
如果没有返回任何其他内容,我可以以某种方式扩展查询,以便它在表行中返回 0 0 0 0 0 吗?
谢谢和最好的问候曼努埃尔