本文分享自華為雲社區《GaussDB(DWS)性能調優:常量標量子查詢做全連接導致整體慢》,作者: Zawami 。 問題描述 由於SQL中存在標量子查詢同另一查詢做笛卡爾積使SQL整體慢。標量子查詢,即結果集只有一行一列的子查詢。這裡導致的SQL語句執行慢不只是在於做笛卡爾積慢,也會使後續聚合更慢 ...
我們在維護資料庫數據的時候,通常會用到各種SQL語句對數據進行操作或者維護,如:查看某個資料庫中有哪些用戶數據表、每個數據表中總共有多少條數據……
SqlServer官方地址:https://learn.microsoft.com/zh-cn/sql
1、整理說明
我們在維護資料庫數據的時候,通常會用到各種SQL語句對數據進行操作或者維護,如:查看某個資料庫中有哪些用戶數據表、每個數據表中總共有多少條數據……
因此,為了方便查閱,整理瞭如下相關語句。
2、資料庫相關
-
查看數據文件占用情況
--查看數據文件占用情況 DBCC showfilestats;
-
查看日誌文件占用情況
--查看日誌文件占用情況 DBCC SQLPERF(LOGSPACE);
-
查詢某資料庫的文件的占用情況
--查詢某資料庫的文件的占用情況 SELECT a.name [文件名稱], CAST(a.[size] * 1.0 / 128 AS DECIMAL(12, 1)) AS [文件設置大小(MB)], CAST(FILEPROPERTY(s.name, 'SpaceUsed') / (8 * 16.0) AS DECIMAL(12, 1)) AS [文件所占空間(MB)], CAST((FILEPROPERTY(s.name, 'SpaceUsed') / (8 * 16.0)) / (s.size / (8 * 16.0)) * 100.0 AS DECIMAL(12, 1)) AS [所占空間率%], CASE WHEN a.growth = 0 THEN '文件大小固定,不會增長' ELSE '文件將自動增長' END [增長模式], CASE WHEN a.growth > 0 AND a.is_percent_growth = 0 THEN '增量為固定大小' WHEN a.growth > 0 AND a.is_percent_growth = 1 THEN '增量將用整數百分比表示' ELSE '文件大小固定,不會增長' END AS [增量模式], CASE WHEN a.growth > 0 AND a.is_percent_growth = 0 THEN CAST(CAST(a.growth * 1.0 / 128 AS DECIMAL(12, 0)) AS VARCHAR) + 'MB' WHEN a.growth > 0 AND a.is_percent_growth = 1 THEN CAST(CAST(a.growth AS DECIMAL(12, 0)) AS VARCHAR) + '%' ELSE '文件大小固定,不會增長' END AS [增長值(%或MB)], a.physical_name AS [文件所在目錄], a.type_desc AS [文件類型] FROM sys.database_files a INNER JOIN sys.sysfiles s ON a.[file_id] = s.fileid LEFT JOIN sys.dm_db_file_space_usage b ON a.[file_id] = b.[file_id] ORDER BY a.type;
3、數據表相關
-
查詢某資料庫中的所有用戶數據表
--查詢某資料庫中的所有用戶數據表 SELECT name 表名稱,object_id 表Id,create_date 創建時間,modify_date 修改時間 FROM sys.objects WHERE type='U' ORDER BY name;
-
查詢出某資料庫中每個用戶數據表數據總條數
--查詢出某資料庫中每個用戶數據表數據總條數 SELECT a.name 表名稱,b.rows 數量 FROM sys.objects a LEFT JOIN sys.partitions b ON a.object_id=b.object_id WHERE a.type='U' ORDER BY a.name;
-
查詢出某資料庫中所有用戶數據表數據總條數
--查詢出某資料庫中所有用戶數據表數據總條數 SELECT SUM(b.rows) 總數量 FROM sys.objects a LEFT JOIN sys.partitions b ON a.object_id=b.object_id WHERE a.type='U';
持續更新中……