[sqlserver] 分析SQL Server中執行效率較低的SQL語句

查詢性能分析較低的SQL語句

-- 查詢性能分析
SELECT TOP 50qs.creation_time AS [編譯時間],qs.last_execution_time AS [最后執行時間],qs.execution_count AS [執行次數],qs.total_worker_time/1000 AS [CPU總時間(ms)],qs.total_elapsed_time/1000 AS [總耗時(ms)],(qs.total_elapsed_time/qs.execution_count)/1000 AS [平均耗時(ms)],qs.total_logical_reads/qs.execution_count AS [平均邏輯讀],qs.total_physical_reads/qs.execution_count AS [平均物理讀],qp.query_plan AS [執行計劃],CASE WHEN qs.total_elapsed_time/qs.execution_count > 1000 THEN '嚴重'WHEN qs.total_elapsed_time/qs.execution_count > 500 THEN '警告'ELSE '正常'END AS [性能評級],SUBSTRING(st.text, (qs.statement_start_offset/2) + 1,((CASE qs.statement_end_offset WHEN -1 THEN DATALENGTH(st.text)ELSE qs.statement_end_offset END - qs.statement_start_offset)/2) + 1) AS [執行語句]
FROM sys.dm_exec_query_stats AS qs
CROSS APPLY sys.dm_exec_sql_text(qs.sql_handle) AS st
CROSS APPLY sys.dm_exec_query_plan(qs.plan_handle) AS qp
WHERE qs.last_execution_time > DATEADD(HOUR, -24, GETDATE())AND st.text NOT LIKE '%sp_%'AND st.text NOT LIKE '%FETCH%'
ORDER BY [平均耗時(ms)] DESC,[執行次數] DESC;

查看 SQL 執行計劃

SET SHOWPLAN_XML ON;
GO
-- SQL語句
GO
SET SHOWPLAN_XML OFF;
GO

執行計劃關鍵解讀點:

?索引使用?

  • ? Index Seek:高效索引查找
  • ?? Index Scan:可能需優化索引
  • ? Table Scan:全表掃描警告

?連接類型?

  • Nested Loops:小數據集適用
  • Hash Match:大數據連接內存消耗高
  • Merge Join:需排序預處理

?警告標識?

  • 紅色驚嘆號:缺失索引/統計信息過期
  • 高成本百分比:性能瓶頸節點

💡 優化建議:對出現 Key Lookup 的操作創建覆蓋索引(INCLUDE 列)

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/92350.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/92350.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/92350.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

SmartX 用戶建云實踐|寶信軟件:搭建“雙架構”私有云平臺,靈活滿足多種業務需求

上海寶信軟件股份有限公司(以下簡稱寶信軟件)系中國寶武實際控制、寶鋼股份控股的上市軟件企業,是中國領先的工業軟件行業應用解決方案和服務提供商,為寶武集團提供整體 IT 基礎架構解決方案與服務。為統一管理寶武集團旗下分散在…

應用科普 | 漫談6G通信的未來

【摘要前言】2019年推出的5G無線通信將移動設備的性能提升到了一個新的水平。首批應用利用5G提供移動寬帶,使消費者能夠以遠超以往的速度進行流媒體傳輸、游戲和連接。隨著技術的成熟,它已成為物聯網的關鍵組成部分,將機器匯集到一個全球網絡…

從零開始用 Eclipse 寫第一個 Java 程序:HelloWorld 全流程 + 避坑指南

對于 Java 初學者來說,第一次用 Eclipse 寫程序往往會手足無措 —— 找不到新建項目的入口、不知道包和類該怎么命名、運行時控制臺突然消失…… 別慌!本文以最經典的 “HelloWorld” 為例,手把手帶你走完從 Eclipse 項目創建到程序運行的完整…

NVIDIA Isaac GR00T N1.5 源碼剖析與復現

? 0. 前言 2025.6.11 NVIDIA Isaac GR00T N1 進化,英偉達發布了NVIDIA Isaac GR00T N1.5模型,效果比原先提高了不少,故來復現一下,看看能否應用于我的項目中: 代碼頁 項目頁 模型頁 ? 以下是使用 GR00T N1.5 的一般…

手把手教你馴服Apache IoTDB時序數據庫,開啟時序數據管理新征程!

手把手教你馴服Apache IoTDB,開啟時序數據管理新征程! 本文是一篇幽默風趣的 Apache IoTDB 時序數據庫安裝使用教程。從 “這東西能不能吃” 的靈魂拷問切入,先科普 IoTDB 的 “真實身份”—— 一款專為時序數據設計的數據庫利器,…

劇本殺小程序系統開發:開啟沉浸式推理社交新紀元

在數字化浪潮席卷的當下,傳統娛樂方式正經歷著前所未有的變革,劇本殺這一融合了推理、角色扮演與社交互動的熱門游戲,也搭上了科技的快車,劇本殺小程序系統開發應運而生,為玩家們開啟了一扇通往沉浸式推理社交新世界的…

Ubuntu系統VScode實現opencv(c++)視頻的處理與保存

通過OpenCV等計算機視覺工具,開發者可以像處理靜態圖像一樣對視頻流逐幀分析:從簡單的裁剪、旋轉、色彩校正,到復雜的穩像、目標跟蹤、超分辨率重建。而如何將處理后的高幀率、高動態范圍數據高效壓縮并封裝為通用格式(如MP4、AVI…

三坐標測量技術解析:從基礎原理到斜孔測量難點突破

基礎原理 三坐標測量儀(Coordinate Measuring Machine,CMM)這種集機械、電子、計算機技術于一體的三維測量設備,其核心技術原理在于:當接觸式或非接觸式測頭接觸感應到工件表面時,測量系統會瞬間記錄三個坐…

【MySQL基礎篇】:MySQL常用內置函數以及實用示例

?感謝您閱讀本篇文章,文章內容是個人學習筆記的整理,如果哪里有誤的話還請您指正噢? ? 個人主頁:余輝zmh–CSDN博客 ? 文章所屬專欄:MySQL篇–CSDN博客 文章目錄內置函數一.日期函數二.字符串函數三.數學函數四.其他函數內置函…

Mirror學習筆記

Mirror官方案例操作 一、導入Mirror 在unity商城訂閱Mirror https://assetstore.unity.com/packages/tools/network/mirror-129321 使用unity創建工程 (推薦版本:目前建議使用 Unity 2020 或 2021 LTS 版本;超出這些版本的可能可以運行…

R4周打卡——Pytorch實現 LSTM火災預測

🍨 本文為🔗365天深度學習訓練營 中的學習記錄博客🍖 原作者:K同學啊 一、準備工作 1.1導入數據 1.2數據集可視化 二、構建數據集 2.1數據集預處理 2.2設置X、Y 2.3檢查數據集中有沒有空值 2.4劃分數據集 三、構建模型 3.1定義訓…

【視覺識別】Ubuntu 22.04 上編譯安裝OPENCV 4.12.0 魯班貓V5

系列文章目錄 提示:這里可以添加系列文章的所有文章的目錄,目錄需要自己手動添加 例如:第一章 Python 機器學習入門之pandas的使用 提示:寫完文章后,目錄可以自動生成,如何生成可參考右邊的幫助文檔 文章目…

基于vue的財務管理系統/基于php的財務管理系統

基于vue的財務管理系統/基于php的財務管理系統

機器學習技術在訂單簿大單檢測中的應用研究

訂單簿數據的特點 訂單簿(Order Book)是記錄市場上所有未成交買賣訂單的數據結構,通常包括價格、數量、買賣方向等信息。訂單簿數據具有以下特點: 高頻率:訂單簿數據更新速度極快,通常以毫秒甚至微秒為單位…

Spring MVC框架中DispatcherServlet詳解

1. DispatcherServlet概述1.1 什么是DispatcherServlet?DispatcherServlet是Spring MVC框架的核心組件,它本質上是一個Java Servlet,作為前端控制器(Front Controller)負責接收所有HTTP請求,并根據特定規則將請求分發到相應的處理…

DBA急救手冊:拆解Oracle死鎖圖,ORA-00060錯誤秒級定位終極指南

關于“死鎖圖”(Deadlock Graph)的一點淺見 當 Oracle 檢測到死鎖時,檢測到死鎖的會話中的當前 SQL 將被取消,并執行“語句級回滾”,以釋放資源并避免阻塞所有活動。 檢測到死鎖的會話仍然“存活”,并且事務…

C++中的默認函數學習

今天在學習QT別人的項目時看到有個函數在聲明和調用時參數個數不一樣,查了下是c中的一種函數類型,這個類型的函數可以讓代碼更簡潔、靈活。定義:在函數聲明時,給某些參數預先設定一個默認值。調用函數時,如果省略這些參…

HBase分片技術實現

HBase分片技術實現概述HBase是基于Hadoop的分布式、可擴展的NoSQL數據庫,采用列族存儲模型。HBase的分片機制通過Region自動分割和負載均衡實現水平擴展,支持PB級數據存儲和高并發訪問。HBase架構核心組件HMaster: 集群管理節點,負責Region分…

Python爬蟲實戰:研究awesome-python工具,構建技術資源采集系統

1. 引言 1.1 研究背景 Python 憑借語法簡潔、生態豐富等特點,已成為全球最受歡迎的編程語言之一。截至 2024 年,PyPI(Python Package Index)上的第三方庫數量已突破 45 萬個,涵蓋從基礎工具到前沿技術的全領域需求。然而,海量資源也帶來了 "信息過載" 問題 —…

【實時Linux實戰系列】實時視頻監控系統的開發

隨著技術的不斷發展,實時視頻監控系統在安防、交通管理、工業自動化等領域得到了廣泛應用。實時Linux系統因其高效的實時性和穩定性,成為開發高性能視頻監控系統的理想選擇。掌握基于實時Linux的視頻監控系統開發技能,對于開發者來說不僅能夠…