Amazon Redshift
数据库开发人员指南 (API Version 2012-12-01)
AWS 服务或AWS文档中描述的功能,可能因地区/位置而异。点 击 Getting Started with Amazon AWS to see specific differences applicable to the China (Beijing) Region.

STL_QUERY

返回有关数据库查询的执行信息。

注意

STL_QUERY 和 STL_QUERYTEXT 表仅包含有关查询的信息,不包含有关其他实用工具和 DDL 命令的信息。对于有关 Amazon Redshift 执行的所有语句的列表和信息,您还可以查询 STL_DDLTEXT 和 STL_UTILITYTEXT 表。有关 Amazon Redshift 执行的所有语句的完整列表,您可以查询 SVL_STATEMENTTEXT 视图。

为了管理磁盘空间,STL 日志表仅保留约 2 到 5 天的日志历史记录,具体取决于日志使用情况和可用磁盘空间。如果需要保留日志数据,则需要定期将数据复制到其他表或将数据卸载到 Amazon S3。

此表 对所有用户可见。超级用户可以查看所有行;普通用户只能看到自己的数据。有关更多信息,请参阅 系统表及视图中数据的可见性

表列

列名称 数据类型 描述
userid integer 生成该条目的用户 ID。
query integer 查询 ID。查询列可用于连接其他系统表和视图。
label character(15) 用于运行查询的文件的名称或使用 SET QUERY_GROUP 命令定义的标签。如果查询并非基于文件或未设置 QUERY_GROUP 参数,则此字段值为 default
xid bigint 事务 ID。
pid integer 进程 ID。一般情况下,会话中的所有查询在同一进程中运行,因此,如果您在同一会话中运行一系列查询,则此值通常保持不变。在特定的内部事件之后,Amazon Redshift 可能会重新启动一个活动会话并分配新的 PID。有关更多信息,请参阅 STL_RESTARTED_SESSIONS
database character(32) 在发起查询时用户连接到的数据库的名称。
querytxt character(4000) 查询的实际查询文本。
starttime timestamp 开始执行查询的时间(用 UTC 表示),有 6 位数字精度,可精确到小数秒。例如:2009-06-12 11:29:19.131358
endtime timestamp 完成查询的时间(用 UTC 表示),有 6 位数字精度,可精确到小数秒。例如:2009-06-12 11:29:19.131358
aborted integer 如果查询已由系统中止或已由用户取消,则此列包含 1。如果查询已完成(包括将结果返回到客户端),则此列包含 0。如果客户端在接收结果之前断开连接,则查询将被标记为已取消 (1),即使查询已在后端成功完成也是如此。
insert_pristine integer 当前查询正在运行时,是否可以运行写查询。1 = 不允许写查询。0 = 允许写查询。此列专用在调试中。

查询示例

以下示例列出最近的 5 个查询。

Copy
select query, trim(querytxt) as sqlquery from stl_query order by query desc limit 5; query | sqlquery ------+-------------------------------------------------- 129 | select query, trim(querytxt) from stl_query order by query; 128 | select node from stv_disk_read_speeds; 127 | select system_status from stv_gui_status 126 | select * from systable_topology order by slice 125 | load global dict registry (5 rows)

以下查询按降序返回在 2013 年 2 月 15 日运行的查询所消耗的时间。

Copy
select query, datediff(seconds, starttime, endtime), trim(querytxt) as sqlquery from stl_query where starttime >= '2013-02-15 00:00' and endtime < '2013-02-15 23:59' order by date_diff desc; query | date_diff | sqlquery -------+-----------+------------------------------------------- 55 | 119 | padb_fetch_sample: select count(*) from category 121 | 9 | select * from svl_query_summary; 181 | 6 | select * from svl_query_summary where query in(179,178); 172 | 5 | select * from svl_query_summary where query=148; ... (189 rows)

本页内容: