要列出 Redshift 的前几个查询,可以使用 Redshift 的系统视图 "STL_QUERY" 和 "STL_QUERY_METRICS"。下面是一个包含代码示例的解决方法:
-- 查询总运行时间、执行时间和等待/排队时间
SELECT
query,
endtime - starttime AS total_runtime,
execution_time,
queue_time
FROM
stl_query
ORDER BY
total_runtime DESC
LIMIT 5;
上述代码将从 "STL_QUERY" 视图中获取查询的总运行时间、执行时间和等待/排队时间。然后,通过计算 "endtime - starttime" 来计算总运行时间。最后,按照总运行时间的降序对查询结果进行排序,并限制结果返回前5个查询。
请注意,Redshift 维护了大量的系统视图,可以帮助我们获取有关查询性能和系统状态的信息。在使用这些视图之前,请确保您具有适当的权限来访问它们。
上一篇:按照总数的百分比分组