Skip to content

Commit 19a231b

Browse files
Merge pull request #702 from erikdarlingdata/dev
sp_QuickieStore: rewrite representative text query for @find_high_impact
2 parents 195437b + 2b2143c commit 19a231b

1 file changed

Lines changed: 47 additions & 39 deletions

File tree

sp_QuickieStore/sp_QuickieStore.sql

Lines changed: 47 additions & 39 deletions
Original file line numberDiff line numberDiff line change
@@ -4241,55 +4241,63 @@ OPTION(RECOMPILE);' + @nc10;
42414241
SELECT
42424242
@sql += N'
42434243
SELECT
4244-
qsq.query_hash,
4244+
ranked.query_hash,
42454245
qsqt.query_sql_text,
4246-
rn =
4247-
ROW_NUMBER() OVER
4248-
(
4249-
PARTITION BY qsq.query_hash
4250-
ORDER BY SUM(qsrs.count_executions) DESC
4251-
)
4252-
FROM ' + @database_name_quoted + N'.sys.query_store_query AS qsq
4253-
JOIN ' + @database_name_quoted + N'.sys.query_store_plan AS qsp
4254-
ON qsq.query_id = qsp.query_id
4255-
JOIN ' + @database_name_quoted + N'.sys.query_store_runtime_stats AS qsrs
4256-
ON qsp.plan_id = qsrs.plan_id
4257-
JOIN ' + @database_name_quoted + N'.sys.query_store_runtime_stats_interval AS qsrsi
4258-
ON qsrs.runtime_stats_interval_id = qsrsi.runtime_stats_interval_id
4259-
JOIN ' + @database_name_quoted + N'.sys.query_store_query_text AS qsqt
4260-
ON qsq.query_text_id = qsqt.query_text_id
4261-
WHERE qsrsi.start_time >= @start_date
4262-
AND qsrsi.start_time < @end_date' + @nc10;
4246+
ranked.rn
4247+
FROM
4248+
(
4249+
SELECT
4250+
qsq.query_hash,
4251+
qsq.query_text_id,
4252+
rn =
4253+
ROW_NUMBER() OVER
4254+
(
4255+
PARTITION BY qsq.query_hash
4256+
ORDER BY SUM(qsrs.count_executions) DESC
4257+
)
4258+
FROM ' + @database_name_quoted + N'.sys.query_store_query AS qsq
4259+
JOIN ' + @database_name_quoted + N'.sys.query_store_plan AS qsp
4260+
ON qsq.query_id = qsp.query_id
4261+
JOIN ' + @database_name_quoted + N'.sys.query_store_runtime_stats AS qsrs
4262+
ON qsp.plan_id = qsrs.plan_id
4263+
JOIN ' + @database_name_quoted + N'.sys.query_store_runtime_stats_interval AS qsrsi
4264+
ON qsrs.runtime_stats_interval_id = qsrsi.runtime_stats_interval_id
4265+
WHERE qsrsi.start_time >= @start_date
4266+
AND qsrsi.start_time < @end_date' + @nc10;
42634267

42644268
/*Same maintenance filter for representative text*/
42654269
IF @include_maintenance = 0
42664270
BEGIN
42674271
SELECT
4268-
@sql += N'AND NOT EXISTS
4269-
(
4270-
SELECT
4271-
1/0
4272-
FROM ' + @database_name_quoted + N'.sys.query_store_query_text AS qsqt2
4273-
WHERE qsqt2.query_text_id = qsq.query_text_id
4274-
AND
4272+
@sql += N' AND NOT EXISTS
42754273
(
4276-
qsqt2.query_sql_text LIKE N''ALTER INDEX%''
4277-
OR qsqt2.query_sql_text LIKE N''ALTER TABLE%''
4278-
OR qsqt2.query_sql_text LIKE N''CREATE%INDEX%''
4279-
OR qsqt2.query_sql_text LIKE N''CREATE STATISTICS%''
4280-
OR qsqt2.query_sql_text LIKE N''UPDATE STATISTICS%''
4281-
OR qsqt2.query_sql_text LIKE N''%SELECT StatMan%''
4282-
OR qsqt2.query_sql_text LIKE N''DBCC%''
4283-
OR qsqt2.query_sql_text LIKE N''(@[_]msparam%''
4284-
OR qsqt2.query_sql_text LIKE N''WAITFOR%''
4285-
)
4286-
)' + @nc10;
4274+
SELECT
4275+
1/0
4276+
FROM ' + @database_name_quoted + N'.sys.query_store_query_text AS qsqt2
4277+
WHERE qsqt2.query_text_id = qsq.query_text_id
4278+
AND
4279+
(
4280+
qsqt2.query_sql_text LIKE N''ALTER INDEX%''
4281+
OR qsqt2.query_sql_text LIKE N''ALTER TABLE%''
4282+
OR qsqt2.query_sql_text LIKE N''CREATE%INDEX%''
4283+
OR qsqt2.query_sql_text LIKE N''CREATE STATISTICS%''
4284+
OR qsqt2.query_sql_text LIKE N''UPDATE STATISTICS%''
4285+
OR qsqt2.query_sql_text LIKE N''%SELECT StatMan%''
4286+
OR qsqt2.query_sql_text LIKE N''DBCC%''
4287+
OR qsqt2.query_sql_text LIKE N''(@[_]msparam%''
4288+
OR qsqt2.query_sql_text LIKE N''WAITFOR%''
4289+
)
4290+
)' + @nc10;
42874291
END;
42884292

42894293
SELECT
4290-
@sql += N'GROUP BY
4291-
qsq.query_hash,
4292-
qsqt.query_sql_text
4294+
@sql += N' GROUP BY
4295+
qsq.query_hash,
4296+
qsq.query_text_id
4297+
) AS ranked
4298+
JOIN ' + @database_name_quoted + N'.sys.query_store_query_text AS qsqt
4299+
ON qsqt.query_text_id = ranked.query_text_id
4300+
WHERE ranked.rn = 1
42934301
OPTION(RECOMPILE);' + @nc10;
42944302

42954303
IF @debug = 1

0 commit comments

Comments
 (0)