SQL Server Management Studio中复制查询结果保持原有的格式

1、运行如下的监控语句,看当前某个会话的sql运行到哪一步了,找到卡住的sql,然后再有针对的进行优化:

--监控SQL执行到哪一步
SELECT session_id,
       b.text,
       DB_NAME(b.dbid) AS DBname,
       OBJECT_NAME(b.objectid) AS objname,
       SUBSTRING(   text,
                    statement_start_offset / 2,
                    (CASE
                         WHEN statement_end_offset = -1 THEN
                             LEN(CONVERT(NVARCHAR(MAX), text)) * 2
                         ELSE
                             statement_end_offset
                     END - statement_start_offset+4
                    ) / 2
                ) AS query_text,
       c.query_plan,
       a.*
FROM sys.dm_exec_requests AS a
    OUTER APPLY sys.dm_exec_sql_text(sql_handle) b --获取sql文本
    OUTER APPLY sys.dm_exec_text_query_plan(plan_handle, a.statement_start_offset, a.statement_end_offset) c
WHERE a.session_id = @@SPID

这里查的是当前会话,也就是 session_id = @@spid。

query_text列 就是当前运行的sql,查询结果如下:

 

2、复制其中的query_text列,发现整个语句都在1行上,效果如下图:

由于没有格式,这个语句没办法看,而且如果语句中包含了注释符号的话,运行语句也会报错。

 

3、这个时候只需要在编辑器中右键,选择 查询选项,在弹出框里选择 结果 -》 网格 -》复制或保存时保留 CR/LF: 

再次复制text列后,会保留原始sql的格式,效果如下:

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值